У меня есть два флажка. Когда я проверяю один, код получает статус и идентификатор этого флажка и pu sh в массив, если это значение уже не существует
Массив становится таким как
[8,0] [10,0]
Требования:
- Дважды вставляется [8,0] [8,0], если я проверяю, а затем сниму флажок и снова проверяю его, чтобы не вставлять несколько раз одни и те же значения
- Удалите указанный массив c из набора массивов, поэтому, если я сниму флажок с chkecbox, удаляю только [8,0], но сохраняю [10,0]
var positions = [];
$("body").on('click', '.check_box', function() {
var id = $(this).attr('data-id');
var status = $(this).attr('data-status');
if ($(this).prop("checked") == true) { // if click on check
if (!$.inArray(id, positions)) positions.push(id); // if id and status not in array then only push
positions.push([id, status]); // it will insert like [8,10] but geting duplicate [8,10] [8,10]
console.log(positions);
} else {
// if uncheck checkbox
// remove specific value like [8,0] or if value present [10,0] then remove this
console.log(positions);
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="checkbox" class="check_box" data-id="8" data-status="0">
<input type="checkbox" class="check_box" data-id="10" data-status="0">