J'ai créé un contrôle serveur personnalisé dans ASP.NET pour rendre une case à cocher standard et un champ caché comme celui-ci:Puis-je récupérer la valeur d'une entrée standard dans ASP.NET?
public class CheckAllBox : WebControl
{
private string checkboxClientID;
protected override void OnInit(EventArgs e)
{
checkboxClientID = String.Format("{0}{1}chbCheckAll", base.ClientID, base.ClientIDSeparator);
base.OnInit(e);
}
protected override void Render(HtmlTextWriter writer)
{
//Render checkbox
writer.AddAttribute(HtmlTextWriterAttribute.Id, checkboxClientID);
writer.AddAttribute(HtmlTextWriterAttribute.Name, checkboxClientID);
writer.AddAttribute(HtmlTextWriterAttribute.Type, "checkbox");
writer.AddAttribute(HtmlTextWriterAttribute.Value, Values);
writer.RenderBeginTag(HtmlTextWriterTag.Input);
writer.RenderEndTag();
//Render hidden field
writer.AddAttribute(HtmlTextWriterAttribute.Id, String.Format("{0}{1}hdnExcludeValues", base.ClientID, base.ClientIDSeparator));
writer.AddAttribute(HtmlTextWriterAttribute.Name, String.Format("{0}{1}hdnExcludeValues", base.ClientID, base.ClientIDSeparator));
writer.AddAttribute(HtmlTextWriterAttribute.Type, "hidden");
writer.AddAttribute(HtmlTextWriterAttribute.Value, ExcludeValues.ToString());
writer.RenderBeginTag(HtmlTextWriterTag.Input);
writer.RenderEndTag();
}
}
Maintenant, je veux récupérer la valeur du champ caché et la case à cocher quand il est posté en arrière - est-ce possible avec le code HTML standard que j'ai rendu?
J'ai déjà écrit jQuery qui fonctionne avec ce balisage, mais il nécessite une case à cocher html standard avec une valeur - pas le type de case à cocher rendu par ASP.NET.
S'il n'est pas possible de récupérer la valeur à partir d'entrées html standard, dois-je réécrire cela comme un contrôle composite, ou y at-il un autre truc?
Vous avez absolument raison, mais ce qui me poussait c'était que ma valeur de case à cocher était nulle. Mais bien sûr, la raison pour laquelle il était nul est que la valeur n'est pas affichée si la case n'est pas cochée. Doh .... maintenant j'ai juste besoin d'un autre champ caché .... – Colin