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 ...

Était-ce utile?

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top