Bonjour,
J'ai un GridView alimenté par un SqlDataSource dont une des colonnes est une TextBox et une CheckBox. En bas de bas j'ai un bouton de validation qui déclenche une fonction (serveur) qui scan mon GridView et qui enregistre toutes les modifications. Pour que les modifications soient enregistrées il faut être dans un des cas suivants :
- TextBox remplie et CheckBox cochée
- TextBox vide et CheckBox cochée
Tout fonctionne pour le côté serveur mais j'ai un souci pour le côté client.
Mon but est de mettre en place une validation client sans PostBack pour afficher un message d'erreur (idéalement avec un ValidatorCalloutExtender pour uniformiser le tout) pour rappeler à l'utilisateur de cocher la CheckBox de validation s'il a renseigné la TextBox.
Voilà un extrait du code :
Code :
- <asp:TemplateField HeaderText="PendantPeriode" SortExpression="Spe_Pendant">
- <ItemTemplate>
- <asp:TextBox ID="pourSaisir" runat="server" Text='<%# Bind("unChamp" ) %>' ></asp:TextBox>
- <asp:CheckBox ID="pourValider" runat="server" Checked='<%# Bind("unBool" ) %>' />
- <asp:CustomValidator ID="unValidator " runat="server" OnServerValidate="CvfValider_ServerValidate" ErrorMessage="Mon erreur." ValidationGroup="gv" Display="None"/>
- <ajx:ValidatorCalloutExtender runat="server" ID="unExtender" TargetControlID=" unValidator" Enabled="True" />
- </ItemTemplate>
- </asp:TemplateField>
|
Je pense qu'il faudrait que j'ajoute une fonction JavaScript au niveau de la ClientValidationFunction de mon CustomValidator, mais je ne sais pas comment coder cette dernière pour parcourir correctement mon GridView, retrouver les contrôles de chaque ligne et valider les saisies suivant les critères cités précédemment.
Merci d'avance pour votre aide
nb : il ne m'est pas possible de changer modifier ce cahier des charges