[javascript] jQuery는 확인란이 선택되어 있는지 확인합니다.

개별 확인란이 선택되어 있는지 확인하는 방법을 알고 있습니다.

그러나 Im은 다음과 같은 문제가 있습니다-양식 ID가 주어지면 확인란 하나가 선택 되어 있는지 확인해야합니다 (예 : 1 이상), 선택 되지 않은 것이 있는지 확인해야합니다 . 기본적으로 나는이 두 질문에 답하는 두 개의 별도 기능이 필요합니다. 도움을 주시면 감사하겠습니다. 감사!

실제로, 아무것도 선택 되지 않았 는지 알려주는 기능이 필요합니다 . 이것을 아는 것은 다른 질문에 대답 할 것입니다.



답변

이런 식으로 사용할 수 있습니다

if ($("#formID input:checkbox:checked").length > 0)
{
    // any one is checked
}
else
{
   // none is checked
}


답변

JQuery .is는 지정된 모든 요소를 ​​테스트하고 그 중 하나 이상이 선택자와 일치하면 true를 반환합니다.

if ($(":checkbox[name='choices']", form).is(":checked"))
{
    // one or more checked
}
else
{
    // nothing checked
}


답변

당신은 이것을 할 수 있습니다 :

  if ($('#form_id :checkbox:checked').length > 0){
    // one or more checkboxes are checked
  }
  else{
   // no checkboxes are checked
  }

어디:

  • :checkbox 필터 선택기는 모든 확인란을 선택합니다.
  • :checked 체크 박스를 선택합니다
  • length 거기에 체크 된 것들의 수를 줄 것입니다

답변

이것은 확인란 목록의 확인란이 변경되었는지 확인하는 데 사용한 것입니다.

$('input[type="checkbox"]').change(function(){ 

        var itemName = $('select option:selected').text();  

         //Do something.

});     


답변

‘길이’를 사용하지 않으면 다음과 같이 할 수 있습니다.

if ($('input[type=checkbox]').is(":checked")) {
      //any one is checked
}
else {
//none is checked
}


답변

.length여기 에서 간단한 반환을 할 수 있습니다.

function areAnyChecked(formID) {
  return !!$('#'+formID+' input[type=checkbox]:checked').length;
}

어떤 경우, 지정된 형태의 체크 박스에 대한이 모습은,보고 :checked및 반환 true(길이 그렇지 않으면 0이 될 것이기 때문이다)가있는 경우. 좀 더 명확하게하기 위해 부울 변환되지 않은 버전은 다음과 같습니다.

function howManyAreChecked(formID) {
  return $('#'+formID+' input[type=checkbox]:checked').length;
}

이것은 몇 개가 체크되었는지를 반환합니다.


답변

Rahul의 답변이 귀하의 질문에 가장 적합합니다. 어쨌든, 체크 박스 그룹을 선택하고 양식의 모든 확인란이 아닌 경우 선택할 수 있습니다.

예를 들어 클래스 이름 test_check과 같이 확인하려는 모든 확인란의 클래스 이름을 입력하면 다음 을 통해 그룹에 속하는 확인란이 선택되어 있는지 확인할 수 있습니다.

$("#formID .test_check:checked").length > 0

반환 true되면 클래스 이름을 가진 하나 이상의 확인란이 선택 test_check되고 반환되면 선택되지 않은 것으로 가정 합니다 false.

그것이 누군가를 돕기를 바랍니다. 감사 :)-