问题描述
我的支票箱
<div class="col-md-3" style="padding-left:15 !important;">
<div class="icheckBox_minimal-grey checked disabled" style="position: relative;"><input class="alanlar" type="checkBox" disabled="" name="gunlukAlanlar[]" value="tarih" checked="" style="position: absolute; opacity: 0;"><ins class="iCheck-helper" style="position: absolute; top: 0%; left: 0%; display: block; width: 100%; height: 100%; margin: 0px; padding: 0px; background: rgb(255,255,255); border: 0px; opacity: 0;"></ins></div>
<label class="control-label" style="margin-left: 5px;color:red;">Tarih</label>
</div>
<div class="col-md-3" style="padding-left:15 !important;">
<div class="icheckBox_minimal-grey checked disabled" style="position: relative;"><input class="alanlar" type="checkBox" disabled="" name="gunlukAlanlar[]" value="saat" checked="" style="position: absolute; opacity: 0;"><ins class="iCheck-helper" style="position: absolute; top: 0%; left: 0%; display: block; width: 100%; height: 100%; margin: 0px; padding: 0px; background: rgb(255,255); border: 0px; opacity: 0;"></ins></div>
<label class="control-label" style="margin-left: 5px;color:red;">Saat</label>
</div>
<div class="col-md-3" style="padding-left:15 !important;">
<div class="icheckBox_minimal-grey checked disabled" style="position: relative;"><input class="alanlar" type="checkBox" disabled="" name="gunlukAlanlar[]" value="Order Adı" checked="" style="position: absolute; opacity: 0;"><ins class="iCheck-helper" style="position: absolute; top: 0%; left: 0%; display: block; width: 100%; height: 100%; margin: 0px; padding: 0px; background: rgb(255,255); border: 0px; opacity: 0;"></ins></div>
<label class="control-label" style="margin-left: 5px;color:red;">Order Adı</label>
</div>
JQuery 库
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
JS代码
$("input[name='gunlukAlanlar[]']")[2].prop("checked",false);
但它不起作用。我想取消选中索引 2。但它不起作用。
请查看图片
解决方法
不要在 jQuery 元素集合上引用数组索引(无论如何都行不通) - 坚持使用 JQ 并使用 .eq()
此外,您的代码将一个不可见的复选框 (opacity: 0
) 设置为 false (prop("checked",false);
) - 当它们都未选中以开始时......
在此,我已将其设置为可见“已选中”复选框。那只是一个css类,所以很容易摆脱。
$("input[name='gunlukAlanlar[]']").eq(1).prop("checked",false);
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<label><input class="alanlar" type="checkbox" name="gunlukAlanlar[]" id="gunlukAlanlar[]" checked value="saat" /> //index 0</label>
<label><input class="alanlar" checked type="checkbox" name="gunlukAlanlar[]" id="gunlukAlanlar[]" value="modelii">//index 1</label>
<label><input class="alanlar" checked type="checkbox" name="gunlukAlanlar[]" id="gunlukAlanlar[]" value="tarih">//index 2</label>
<label><input class="alanlar" checked type="checkbox" name="gunlukAlanlar[]" id="gunlukAlanlar[]" value="musteri">//index 3</label>