Règle personnalisée de validation Asp.Net JQuery
-
22-07-2019 - |
Question
J'essaie de personnaliser la règle du plug-in de validation JQuery et j'ai presque terminé. Le seul problème que j'ai eu est que la fonction $ (& Quot; & Lt;% = txtUserl.UniqueID% & Gt; & Quot;). Val () renvoie undefined. Comment puis-je obtenir la valeur de cette zone de texte?
$("#aspnetForm").validate
(
{
rules:
{
<%=txtUser.UniqueID %>:
{
required: true,
remote: "CheckUser.aspx?User=" + $("#<%=txtUser.ClientID %>").val()
}
},
messages:
{
<%=txtUser.UniqueID %>:
{
remote: "Invalid user"
}
}
}
);
Et dans mon formulaire Web
<asp:TextBox ID="txtUser" runat="server" TabIndex="1" />
UPDATE
Je change pour utiliser ClientID au lieu de UniqueID. De plus, je mets mon code javascript à la fin de mon fichier plutôt qu'au début du fichier.
Le problème que j'ai eu est que txtUser.val () renvoie une chaîne vide & "; &". en fait, je remarque que c'est retourner l'ancienne valeur de la zone de texte si je change la valeur. Cela ne retourne pas la valeur actuelle, c'est-à-dire le besoin dont j'ai besoin ...
La solution
essayez txt User.Client ID au lieu de UniqueID
Autres conseils
$("#<%=txtUser.ClientID %>").val()
Notez le # qui manque aussi.
Oui, utilisez le txtUser.ClientID, mais vous devez aussi utiliser le (#) pour obtenir la valeur de la zone de texte dans laquelle votre déclaration doit être
$("#"+"<%=txtUser.UniqueID %>").val()
si vous n'utilisez pas le signe (#), cela donnera une erreur espérons que cela aidera