Hiho, 함수는 이름이 .resultsblock 인 모든 클래스를 검색하고 표시 가능한 경우 데이터를 배열에 넣습니다.함수는 이름이 .resultsblock 인 모든 클래스를 검색하고 표시되는 경우 배열에 데이터를 입력합니다.
문제는 첫 번째 클래스가 "display : block"이고 모든 선물 값이 true를 반환하고 배열에 ut가되며 문제가 "display : none"이고 첫 번째 값이 "display : none"이면 모든 값이 반환됩니다. 거짓 ...
<div id="measure_print" class="resultblock" data-nid="900" style="display: block;">
<p>blablalblabla</p>
</div>
<div id="measure_print" class="resultblock" data-nid="988" style="display: none;">
<p>blablalblabla</p>
</div>
<div id="measure_print" class="resultblock" data-nid="999" style="display: none;">
<p>blablalblabla</p>
</div>
<button type="button" onClick = "cartAction('addall','')" >Add All</button>
function cartAction(action,nID) {
var nidarr = [];
if(action != "") {
switch(action) {
case "addall":
$.each($('.resultblock'), function(index, value) {
var temp = parseInt($(value).data('nid'));
var query = $('#measure_print');
if ($('.resultblock').css('display') !== 'none') {
nidarr.push(temp);
console.log(temp);
}
});
console.log(nidarr);
break;
}
}
}
내가 내 자신의 솔루션 제작 - 문이 resultblock 클래스를 가진 모든 div를 다시 선택하면 라이브>
DEMO를 https://jsfiddle.net/kardebadas/j3f9scet/3/
는
'id' 속성의 값은 고유해야하며, 여러 개의 요소가'id '와 동일해야 검색 할 수 없습니다. (첫 번째 만 찾음) –