0

我有一个启用多选的复选框列表。我需要获取每个复选框的标签而不是值并做一些工作。如果值是 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>
4

3 回答 3

2

如果你想禁用带有No answer选项的复选框,你可以试试这个:

$('label:contains("No answer")').prev(':checkbox').prop('disabled', true);

http://jsfiddle.net/PUJrQ/

于 2013-07-04T10:18:41.403 回答
1
<input type="checkbox"  id="test"/>
<label for="test">THIS IS LABEL</label>

您可以使用$("label[for='test']")

于 2013-07-04T10:11:06.403 回答
0

最后,我找到了一种自己做的方法。

           $('#ddcl-ddlOutcomeList-ddw input:checkbox').each( function(e) {
        var  chkBoxVal=$("label[for='" + $(this).attr("id") +"']").text();
        console.log(chkBoxVal);
     });
于 2013-07-04T10:19:04.577 回答