我有一个复选框列表,可以启用多选。我需要获取每个复选框的标签而不是值,并做一些工作。如果值是aaa&&& bbb我需要禁用它们(不允许用户检查)和其他我希望显示为可检查的人。
我写了这段代码但是没有用。我想我错过了什么。
$('#ddcl-ddlOutcomeList-ddw input[type=checkbox]').each(function () {
console.log($(this).html());
});
前:
<div class="ui-dropdownchecklist-item ui-state-default" style="white-space: nowrap;">
<input type="checkbox" tabindex="0" class="active" id="ddcl-ddlOutcomeList-i0" index="0" value="1444">
<label for="ddcl-ddlOutcomeList-i0" class="ui-dropdownchecklist-text" style="cursor: default;">No answer</label>
</div>
<div class="ui-dropdownchecklist-item ui-state-default" style="white-space: nowrap;">
<input type="checkbox" tabindex="1" class="active" id="ddcl-ddlOutcomeList-i1" index="0" value="1445">
<label for="ddcl-ddlOutcomeList-i1" class="ui-dropdownchecklist-text" style="cursor: default;">No answer 2</label>
</div>
答案 0 :(得分:2)
如果要禁用No answer
选项的复选框,可以尝试以下操作:
$('label:contains("No answer")').prev(':checkbox').prop('disabled', true);
答案 1 :(得分:1)
<input type="checkbox" id="test"/>
<label for="test">THIS IS LABEL</label>
您可以使用$("label[for='test']")
答案 2 :(得分:0)
最后,我找到了一种自己做的方法。
$('#ddcl-ddlOutcomeList-ddw input:checkbox').each( function(e) {
var chkBoxVal=$("label[for='" + $(this).attr("id") +"']").text();
console.log(chkBoxVal);
});