다음을 사용하여 페이지에서 모든 확인란을 선택할 수 있음을 알고 있습니다.
$('input[type=checkbox]').each(function () {
var sThisVal = (this.checked ? $(this).val() : "");
});
그러나 나는 이것을 포함하고 싶지 않은 다른 확인란이있는 페이지에서 이것을 사용하고 있습니다. 특정 클래스가있는 확인란을 선택하도록 위의 코드를 어떻게 변경합니까?
답변
$('.theClass:checkbox:checked')
클래스와 함께 선택된 모든 확인란을 제공합니다 theClass
.
답변
$('input:checkbox.class').each(function () {
var sThisVal = (this.checked ? $(this).val() : "");
});
예로 설명합니다.
:checkbox
확인란의 선택기입니다 (실제로 input
이전 버전의 라이브러리에서 이상한 결과를 얻을 수있는 틈새 사례를 찾았지만 실제로는 선택기 의 일부를 생략 할 수 있습니다. 나는 그것들이 이후 버전에서 고정되어 있다고 확신합니다).
.class
를 포함하는 요소 클래스 속성의 선택기입니다 class
.
답변
의무적 인 .map
예 :
var checkedVals = $('.theClass:checkbox:checked').map(function() {
return this.value;
}).get();
alert(checkedVals.join(","));
답변
$('input.yourClass:checkbox:checked').each(function () {
var sThisVal = $(this).val();
});
클래스 이름 “yourClass”의 모든 확인란이 표시됩니다. 나는이 예처럼이의 jQuery 셀렉터를 사용하기 때문에 검사 조건 검사를하고 대신. 개인적으로 배열을 사용하여 값을 저장 한 다음 필요에 따라 다음과 같이 사용합니다.
var arr = [];
$('input.yourClass:checkbox:checked').each(function () {
arr.push($(this).val());
});
답변
모든 확인란 의 값을 배열로 가져와야 하는 경우 :
let myArray = (function() {
let a = [];
$(".checkboxes:checked").each(function() {
a.push(this.value);
});
return a;
})()
답변
$('input.theclass[type=checkbox]').each(function () {
var sThisVal = (this.checked ? $(this).val() : "");
});
답변
귀하의 특정 경우에 도움이되는지 확실하지 않으며 귀하의 경우 포함하려는 확인란이 모두 단일 양식 또는 div 또는 표의 일부인지 확실하지 않지만 항상 모든 확인란을 선택할 수 있습니다 특정 요소 내부. 예를 들면 다음과 같습니다.
<ul id="selective">
<li><input type="checkbox" value="..." /></li>
<li><input type="checkbox" value="..." /></li>
<li><input type="checkbox" value="..." /></li>
<li><input type="checkbox" value="..." /></li>
</ul>
그런 다음 다음 jQuery를 사용하여 id = “selective”를 사용하여 해당 UL 내의 확인란 만 선택합니다.
$('#selective input:checkbox').each(function () {
var sThisVal = (this.checked ? $(this).val() : "");
});