J'ai une page assez complexe contenant une case à cocher:Asp.Net - Débogage pourquoi CheckBox a vérifié = true après une publication
// In the .aspx
<asp:CheckBox id="MyCheckBox" runat="server" text="Testing" />
// In the .aspx.cs
protected System.Web.UI.WebControls.CheckBox MyCheckBox;
Ce que je vois est que, après une publication sur la page, la case à cocher en quelque sorte se termine avec sa propriété Checked définie sur true au moment où j'atteins l'événement Page_Load
, et je ne peux pas comprendre pourquoi - à aucun moment je ne mets la valeur de la case à cocher ou de modifier la case de quelque façon, il n'y a pas contrôles de répéteur, sur cette page et le CheckBox n'est certainement pas vérifié lorsque je soumets le formulaire.
Bien que la page elle-même soit assez complexe, l'interaction avec la CheckBox elle-même est complètement triviale - j'ai déjà passé beaucoup de temps à essayer de comprendre comment la valeur Checked de cette case est true, sans succès - quels débogages/diagnostics sont là pour comprendre pourquoi cette case a été modifiée?
MISE À JOUR: J'ai maintenant commencé à utiliser un contrôle HtmlInputCheckBox
:
// In the .aspx
<input type="checkbox" id="TelephonyEnabledCheckBox" runat="server" />
// In the .aspx.cs
protected System.Web.UI.HtmlControls.HtmlInputCheckBox TelephonyEnabledCheckBox
La même chose arrive encore - au cours OnInit()
Vérifié est faux, mais le temps que je reçois à Page_Load()
vérifié est vrai. La case est définitivement décochée lors de la publication, et Request.Form["TelephonyEnabledCheckBox"]
est "0"
(indiquant qu'elle n'est pas cochée).
Que se passe-t-il? En ce moment je suis inquiet que je devrais avoir recours à employer les valeurs de poteau directement (il serait cependant agréable de comprendre ce qui se passe)
Existe-t-il un code Javascript qui active l'état vérifié des cases à cocher? – adrianos
Pour référence future, cela aurait dû être une question régulière, pas un wiki communautaire. –
Je n'ai aucune idée de comment cela est devenu wiki communautaire - ce n'était certainement pas mon intention. – Justin