2013-03-19 5 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][]] 

You может видеть мой код на этой странице jsfiddle: jsfiddle link

+0

может у показать подтверждение – PSR

ответ

2

Ответить значение атрибута:

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

Вы можете оставить только кавычки, когда название просто как foo, если имя foo $[][½½{}] ], то вы должны указать его по причинам, я надеюсь, очевидны ..

+2

Правило: если вы не уверены, цитируйте. Если вы уверены, вы можете процитировать в любом случае. –

0

Putting Quotes on the name will solve your issue и To 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; 
       } 
      } 
     });  
    });  
}); 
Смежные вопросы