javascript 使用JQuery获取复选框选中状态

cetgtptt  于 2022-12-17  发布在  Java
关注(0)|答案(4)|浏览(244)

我尝试了许多方法来获得复选框的选中状态。它是一个带有类型复选框的输入字段。
我尝试了以下方法来获取状态,但所有方法都返回false,只有在以前使用jQuery将复选框设置为选中/未选中的情况下(这是使用$.prop("checked", "true")完成的)。

$("#ID").prop("checked");
$("#ID").val(); //returns "on" everytime
$("#ID").attr("checked");
$("#ID").checked; //undefined

在我的代码中ID是一真实的ID!
选中的状态也是用jQuery设置的,如下所示:

$(columns[i]).children().first().prop("checked", stateArray[i]);

复选框位于KendoGrid和列中。children获取所有tdfirst()返回输入。
stateArray是一个真/假数组。
什么都不管用......你有办法吗?
问候
编辑:我发现了错误...为输入生成的ID总是相同的...所以它选择了第一个没有选择的元素...对此我很抱歉!

ubof19bj

ubof19bj1#

选择器在哪里?使用is(":checked"),如下所示。

var status = $(':checkbox').is(":checked");
voase2hg

voase2hg2#

要查找选中或未选中的复选框,请使用$('input[type="checkbox"]').prop("checked")
要了解更多信息,请查看以下代码片段。

$('input[type="checkbox"]').on('change',function(){
  if($(this).prop('checked')){
    alert("checked");
  }else{
    alert("un-checked");  
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox"/>
np8igboo

np8igboo3#

您需要先从DOM中选择checkbox,然后读取其checked属性。

$(function() {
  console.log($('#ab3fee6b-c81e-e4ba-b12e-2c088bb386cc_A4').prop('checked'));
  console.log($('#ab3fee6b-c81e-e4ba-b12e-2c088bb386cc_A5').prop('checked'));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input id="ab3fee6b-c81e-e4ba-b12e-2c088bb386cc_A4" type="checkbox" data-role="check" otg-visible="true" style="-webkit-appearance: checkbox !important; width: 20px; height: 20px; display: table-cell; margin: 0px;">
<input id="ab3fee6b-c81e-e4ba-b12e-2c088bb386cc_A5" type="checkbox" data-role="check" checked otg-visible="true" style="-webkit-appearance: checkbox !important; width: 20px; height: 20px; display: table-cell; margin: 0px;">
smdnsysy

smdnsysy4#

您可以尝试以下任一操作:

$('#checkbox_id').is(":checked"); // jQuery

document.getElementById("checkbox_id").checked //JavaScript

如果选中checkbox,则返回true

相关问题