2011-09-02 5 views
1

jquery 양식 플러그인 사용. 대괄호를 사용하는 양식 요소의 값을 테스트하려고했습니다.jquery로 대괄호를 이스케이프 처리 할 때 문자가 올바르지 않습니다.

  var form = jqForm[0]; 
      if (!form.sendTo\\[\\].value) {     
       alert('Something'); 
       return false; 
      } 

대괄호를 벗어나려고해도 오류가 발생합니다.

잘못된 문자

[이 오류에 브레이크] 경우 (! form.sendTo \ [\]. 값) {

는이 작업을 수행 할 수 없습니다?

감사

답변

3

당신은 자바 스크립트 도트 표기법 대신에 대괄호와 문자열을 사용할 수 있습니다. 그래서이 시도 :

var form = jqForm[0]; 
if (!form["sendTo[]"].value) {     
    alert('Something'); 
    return false; 
} 

편집을 설명 후 :

당신 같은이 코드를 사용하는 체크 박스를 선택 얼마나 많은 확인할 수 있습니다 jQuery를 사용하여 :

$('input[name="sendTo[]"]:checked',form).length 

form 가정을 JQuery와있다 체크 박스를 포함한 폼을 참조하는 객체. 그렇지 않은 경우에는 위의 예에서 $(form)처럼 포장 할 수 있어야합니다.

라이브 예 : http://jsfiddle.net/TMSsq/

+0

감사합니다. 그것은 트릭을했다. – oljones

+0

더 자세히 살펴보면, 이것이 작동하는 동안, 이것이 전체 그림이 아니라는 것을 알 수 있습니다. 양식 요소는 실제로 "sendTo []"라는 이름을 가진 모든 확인란의 일부입니다. 분명히해야 할 일은 상자 중 하나에 값이 있는지 확인하는 방법을 알아내는 것입니다. 적어도 하나는 확인해야하기 때문입니다. – oljones

+0

@oljones - 업데이트 – Jamiec

0

는 연관 배열로 사용합니다. 사용해보기

 var form = jqForm[0]; 
     if (!form.["sendTo[]"].value) {     
      alert('Something'); 
      return false; 
     } 
관련 문제