2011-12-11 4 views
147

JQuery와의 모든 체크되지 않은 체크 박스를 찾을 : 내가 확인 체크 박스의 모든 값을 수집 할 수 있습니다내가 확인란 목록이

<input type="checkbox" name="answer" id="id_1' value="1" /> 
<input type="checkbox" name="answer" id="id_2' value="2" /> 
... 
<input type="checkbox" name="answer" id="id_n' value="n" /> 

을; 내 질문에 어떻게 체크되지 않은 확인란의 모든 가치를 얻을 수 있습니까?

$("input:unchecked").val(); 

가 체크되지 않은 체크 박스의 값을 얻을 수 있지만, 내가 가지고 : 나는 시도

구문 오류, 인식 할 수없는 표현 : 선택 해제합니다.

누구든지이 문제에 관해 밝힐 수 있습니까? 고맙습니다!

+2

[jQuery를 : 모든 선택하지 않은 체크 박스를 찾아 사용법]의 중복 가능성 (http://stackoverflow.com/questions/1093350/jquery -find-all-unselected-checkbox-how-to) –

+1

[선택되지 않은 모든 확인란을 찾는 방법?] (https://stackoverflow.com/questions/1093350/how-to-find-all-unselected-checkboxes)) – jacefarm

답변

335

오류 메시지가 표시 될 때 jQuery는 :unchecked 선택자를 포함하지 않습니다.
는 대신 :checked 선택을 반전 할 필요가 :이 모든 체크되지 않은 체크 박스를 검색하고 내가 확인하는 데 사용하는 "chkAll"체크 박스 제외됩니다

$("input:checkbox:not(:checked)") 
+1

'입력'이 필요합니까? – kapa

+18

@bazmegakapa : 아니요,하지만 빠릅니다. http://api.jquery.com/checkbox-selector/ – SLaks

+2

그리고 input [type = checkbox]를 사용하는 것이 가장 빠릅니다. – jClark

21

$("input:checkbox:not(:checked)") 확인란을 선택 취소합니다.

+3

모든 텍스트 상자가 포함됩니다. – SLaks

10
$.extend($.expr[':'], { 
     unchecked: function (obj) { 
      return ((obj.type == 'checkbox' || obj.type == 'radio') && !$(obj).is(':checked')); 
     } 
    }); 


$("input:unchecked") 
2
$("input[type='checkbox']:not(:checked):not('\#chkAll\')").map(function() { 
    var a = ""; 
    if (this.name != "chkAll") { 
     a = this.name + "|off"; 
    } 
    return a; 
}).get().join(); 

| 모든 확인란의 선택을 취소합니다. 데이터베이스에 전달하는 값이 무엇인지 알고 싶기 때문에 확인란을 선택하면 값이 설정되므로이 값을 설정해야합니다.

//looking for unchecked checkboxes, but don’t include the checkbox all that checks or unchecks all checkboxes 
//.map - Pass each element in the current matched set through a function, producing a new jQuery object containing the return values. 

//.get - Retrieve the DOM elements matched by the jQuery object. 
//.join - (javascript) joins the elements of an array into a string, and returns the string.The elements will be separated by a specified separator. The default separator is comma (,). 
+1

OP에 전혀 관련이없는 답변을 포함해서는 안됩니다. 그는'chkAll' 상자를 사용하지 않으므로 그것을 언급하는 것이 무엇입니까. – MMM

2

당신은 다음과 같이 사용할 수 있습니다

$(":checkbox:not(:checked)") 
0
$(".clscss-row").each(function() { 
if ($(this).find(".po-checkbox").not(":checked")) { 
       // enter your code here 
      } }); 
+1

StackOverflow에 오신 것을 환영합니다! 코드에 설명을 추가하면 다른 사용자 (사용자가 찾고있는 사용자)가 코드의 기능을 파악할 수 있습니다. –