2015-02-09 12 views
10

Ich habe eine bereits existierende Form, die ich versuche, Jquery Validierung enthält, hinzuzufügen:Uncaught Typeerror: kann nicht lesen Eigenschaft ‚nennen‘ undefinierter

<form id="form" method="POST" action="/title/"> 
    {% csrf_token %} 
<input type="hidden" name="id" value="6"> 
<input type="hidden" name="custom_checkbox_Electronic_Signature_man" value="1"> 
          <p> <span class="style9">First Name </span> 
           <input type="text" name="first_name" value="" size="20" class="style7"><span class="style9"> 
          Last Name </span> 
           <input type="text" name="last_name" value="" size="20" class="style7"><span class="style9"> 

Mit dem jQuery-Validator-Plugin, ich habe hinzugefügt:

$('form').validate({ 
    rules: { 
     first_name: { 
      minlen: 3, 
      maxlength: 15, 
      required: true 
     }, 
     last_name: { 
      minlength: 3, 
      maxlength: 15, 
      required: true 
     }, 
     email: { 
      required: true, 
      email: true 
     }, 
     phone1: { 
      required: true, 
      phoneUS: true 
      }, 
     phone2: { 
      required: true, 
      phoneUS: true 
      }, 
      street: { 
      required: true 
      }, 
       city: { 
      required: true 
      }, 
       state: { 
      required: true 
      }, 
       zip: { 
      zipcodeUS: true 
      } 

    }, 
    highlight: function(element) { 
     $(element).closest('.style9').addClass('.style13'); 
     //$(element).addClass('.style13'); 
    }, 
    unhighlight: function(element) { 
     $(element).closest('.style9').removeClass('.style13'); 
     //$(element).removeClass('.style13'); 
    }, 
    errorElement: 'span', 
    errorClass: 'style13', 
    errorPlacement: function(error, element) { 
     if(element.parent('.input-group').length) { 
      error.insertAfter(element.parent()); 
     } else { 
      error.insertAfter(element); 
     } 
    } 
}); 

ich erhalte den Fehler oben aufgeführt sind. Was mache ich falsch?

+0

Was bedeutet die Fehler Spur aussehen? auch, wo ist die Klasse .input-Gruppe im html – Quince

+1

ich hatte das gleiche Problem nur hatte ich 'minLength' statt' minlength'. Es ist immer das dumme Zeug, das mich umbringt. – yankeyhotel

Antwort

14

ersetzen minlen mit minlength, und es funktioniert, gibt es keine minlen Eigenschaft, so call nicht intern

$('form').validate({ 
    rules: { 
     first_name: { 
      minlength: 3, // <- here 
      maxlength: 15, 
      required: true 
     }, 
     last_name: { 
      minlength: 3, 
      maxlength: 15, 
      required: true 
     }, 
    .......... 
0

versuchen

jQuery(document).ready(function(){ 
       $('form').validate({ 
    rules: { 
     first_name: { 
      minlen: 3, 
      maxlength: 15, 
      required: true 
     }, 
     last_name: { 
      minlength: 3, 
      maxlength: 15, 
      required: true 
     }, 
     email: { 
      required: true, 
      email: true 
     }, 
     phone1: { 
      required: true, 
      phoneUS: true 
      }, 
     phone2: { 
      required: true, 
      phoneUS: true 
      }, 
      street: { 
      required: true 
      }, 
       city: { 
      required: true 
      }, 
       state: { 
      required: true 
      }, 
       zip: { 
      zipcodeUS: true 
      } 

    }, 
    highlight: function(element) { 
     $(element).closest('.style9').addClass('.style13'); 
     //$(element).addClass('.style13'); 
    }, 
    unhighlight: function(element) { 
     $(element).closest('.style9').removeClass('.style13'); 
     //$(element).removeClass('.style13'); 
    }, 
    errorElement: 'span', 
    errorClass: 'style13', 
    errorPlacement: function(error, element) { 
     if(element.parent('.input-group').length) { 
      error.insertAfter(element.parent()); 
     } else { 
      error.insertAfter(element); 
     } 
    } 
}); 
      }); 
3

Generell dies ein Fehler ist, dass, wenn Sie heb- habe eine ungültige jQuery-Validierungsregel festgelegt.
Sie können die gültigen Validierungsregeln this Link.

Verwandte Themen