Realizzare Un RequiredFieldValidator Per Le Checkbox

Posted by: ollie10 4/30/2009 10:45 AM

Se si vuole obbligare la selezione di una checkbox (tipicamente quella per la verifica della privacy) non è possibile utilizzare il controllo RequiredFieldValidator. La soluzione è semplice utilizzando il flessibile controllo CustomValidator.

Pagina aspx:

<asp:CheckBox ID="chkPrivacy" Runat="server" />
<asp:CustomValidator ClientValidationFunction="RequiredPrivacy" Runat="server" ID="CustomValidatorchkPrivacy" />

 

Validazione lato server:

La validazione si riduce semplicemente alla verifica della proprietà Checked del controllo CheckBox

private void CustomValidatorchkPrivacy_ServerValidate(object source, ServerValidateEventArgs args)
{
	args.IsValid = true;
	if(chkPrivacy.Checked == false)
		args.IsValid = false;
}

 

Validazione lato client:

La validazione lato client (facoltativa) si effettua impostando la proprietà ClientValidationFunction del controllo CustomValidator

<script language="javascript">
	function RequiredPrivacy(oSrc, args){
		if (document.all["<%=chkPrivacy.ClientID%>"].checked == false){
			alert("Devi acconsentire al trattamento dei dati personali");
			args.IsValid = false;
		}
	}
</script>

Si noti lo script server chkPrivacy.ClientID necessario per passare il corretto ID del controllo a runtime al codice Javascript.

Tags: ,
Categories: Asp.NET - C# | Sviluppo Web
Permalink | Comments (0)
RSS comment feed

Comments

Add comment


(Will show your Gravatar icon)

  Country flag

biuquote
  • Comment
  • Preview
Loading