J'ai un site Web écrit en ASP.NET MVC et j'ai un ensemble de paramètres à la page en question qui spécifie ce que la page précédente est. Le raisonnement est le suivant: lorsqu'un utilisateur clique sur une image d'une page particulière, la page chargée cochera automatiquement la case appropriée en utilisant javascript (jQuery en particulier).Pourquoi ces cases à cocher ne sont-elles pas vérifiées par code-behind?
Voici le code qui obtient et définit le paramètre:
<script type="text/C#" runat="server">
protected string Referrer = string.Empty;
protected override void OnLoad(EventArgs e)
{
try
{
Referrer = Request.UrlReferrer.Segments[2].ToLower();
}
catch (System.Exception)
{
Referrer = string.Empty;
}
base.OnLoad(e);
}
</script>
Ensuite, voici la collection de cases:
<div id="interestSelect1" class="interestPad">
<%= Html.CheckBoxFor(model => model.Interests[0])%>
<label for="Interests_0_">Insulation</label>
<%= Html.CheckBoxFor(model => model.Interests[1])%>
<label for="Interests_1_">Windows</label>
<%= Html.CheckBoxFor(model => model.Interests[2])%>
<label for="Interests_2_">Siding</label>
<%= Html.CheckBoxFor(model => model.Interests[3])%>
<label for="Interests_3_">Roofing</label>
</div>
<div class="clear">
</div>
<div id="interestSelect2" class="interestPad">
<%= Html.CheckBoxFor(model => model.Interests[4])%>
<label for="Interests_4_">Gutters/Protection</label>
<%= Html.CheckBoxFor(model => model.Interests[5])%>
<label for="Interests_5_">Patio Doors</label>
</div>
Lors du rendu dans le navigateur, voici ce que chaque des cases à cocher ressemblent à:
<input id="Interests_0_" name="Interests[0]" type="checkbox" value="true" />
<input name="Interests[0]" type="hidden" value="false" />
<label for="Interests_0_">Insulation</label>
Voici le javascript que j'utilise, qui ne fonctionne pas: 01 Je fais évidemment quelque chose de complètement faux, quelqu'un peut-il me diriger dans la bonne direction?
Merci!
EDIT: Ressemble à un autre fichier JS qui se trouvait sur une page MasterPage qui a été appelée avant que mon bloc JS n'entraîne la non-vérification des cases. Le principal problème était l'oubli de l'identifiant #
.
@ajreal - votre commentaire me semble plutôt vague. Pourriez-vous élaborer? – Anders
mon mauvais, $ ('Interests_0 _'). Attr ('checked', 'checked'); semble devoir être corrigé à $ ('# Interests_0 _'). Attr ('checked', 'checked'); – ajreal