2013-03-19 82 views
0

我有一個jQuery表單驗證代碼。該腳本工作正常,如果元素的名稱是單一的,但如果它是一個數組象下面這樣:無法識別的表達式:[name = name [first] []]

<form name="test" id="test"> 
<input type="text" name="name[first][]" /> 
<input type="text" name="name[first][]" /> 
<input type="text" name="name[first][]" /> 
<input type="button" name="Submit" value="submit" class="submit" /> 

驗證腳本不能正常工作,它總是返回此錯誤:

Error: Syntax error, unrecognized expression: [name=name[first][]] 

你可以在此jsfiddle鏈接上看到我的代碼: jsfiddle link

+0

u能顯示驗證 – PSR 2013-03-19 14:11:33

回答

2

引用屬性值:

$('[name="name[first][]"]') 

只能離開報價出來的時候,名字是簡單的像foo,如果名稱是foo $[][½½{}] ]則必須引用它的原因,我希望是顯而易見的..

+2

規則是:如果您不確定,請報價。如果你確定,你可以反覆引用。 – 2013-03-19 14:13:42

0

Putting Quotes on the name will solve your issueTo validate the all Textbox value,你可以也試着像下面:

小提琴例:http://jsfiddle.net/wdr9b/12/

$(document).ready(function() { 
    $('.submit').click(function() {   
     $('input[type="text"]').each(function(){ 
      if($(this).attr("name") == "name[first][]"){ 
       if($(this).val().length <= 0) { 
        alert('field is required.'); 
        return false; 
       } 
      } 
     });  
    });  
}); 
相關問題