2012-09-13 13 views
10

Dato questo HTML usando jQuery convalidarejQuery Convalida Uncaught TypeError: Impossibile chiamare il metodo 'getAttribute' di indefinito

<input id="accept-terms" type="checkbox" class="required"/> 
<label for="accept-terms"> I accept the <asp:HyperLink ID="termsLink" runat="server" Target="_blank">terms and condtions</asp:HyperLink> of sale.</label> 
<label for="accept-terms" class="error-text">You must accept the terms and conditions before purchasing</label> 

ottengo questo errore:

Uncaught TypeError: Cannot call method 'getAttribute' of undefined

risposta

22

L'attributo 'name' mancante:

<input id="accept-terms" name="accept-terms" type="checkbox" class="required"/> 

(Questo mi ci è voluto un po 'per capire quindi ho pensato di condividere la domanda e la soluzione)

Inoltre: controllare i commenti seguenti, poiché altri hanno pubblicato altre cause per la stessa eccezione.

+3

Questo può apparentemente accadere anche se si dispone di un modulo all'interno di un altro modulo. –

+0

Sto avendo lo stesso problema con un TextArea che ha già un attributo 'nome' – mbmihura

+0

Basta leggere che può essere anche a causa di un nome di regola mancante. Nella mia situazione, ho creato una regola personalizzata, che non si caricava correttamente e il validatore non è stato in grado di trovarlo (quindi ha gettato il messaggio "Uncaught TypeError: Can not call method 'getAttribute' of undefined") – mbmihura

Problemi correlati