Javascript 仅为选中复选框的输入获取标签名称
我有一个字段集,如下所示Javascript 仅为选中复选框的输入获取标签名称,javascript,jquery,jquery-mobile,Javascript,Jquery,Jquery Mobile,我有一个字段集,如下所示 <div class="ui-field-contain"> <fieldset id="fieldstep1" data-role="controlgroup"> <legend>Choose Sections:</legend> <input name="checkbox-1a" id="checkbox-1a" type="checkbox"> <label for="che
<div class="ui-field-contain">
<fieldset id="fieldstep1" data-role="controlgroup">
<legend>Choose Sections:</legend>
<input name="checkbox-1a" id="checkbox-1a" type="checkbox">
<label for="checkbox-1a">Morning</label>
<input name="checkbox-2a" id="checkbox-2a" checked type="checkbox">
<label for="checkbox-2a">Evening</label>
<input name="checkbox-3a" id="checkbox-3a" checked type="checkbox">
<label for="checkbox-3a">Night</label>
<input name="checkbox-4a" id="checkbox-4a" checked type="checkbox">
<label for="checkbox-4a">Snacks</label>
</fieldset>
</div>
这是Js小提琴-试试看
$('#fieldstep1 input:checkbox:checked + label').each(function(){
var a = $(this).text();
alert(a);
});
演示:
看
检查演示站点后:
$('#fieldstep1 input:checkbox:checked').prev().each(function () {
var a = $(this).text();
console.log(a);
});
您可以这样做:
$('#fieldstep1').find('label').each(function () {
if ($('#' + $(this).attr('for')).is(':checked')) {
var a = $(this).text();
alert(a);
}
});
说明:对于每个标签,$('#'+$(this).attr('For'))
获取标签的复选框,.is(':checked')
检查是否选中该复选框
查看更新后的。由于某些原因,它没有在我的html主页中循环。.无论如何,你的参考资料+1:)和raidiri答案正在工作。你的小提琴中的html是否与你的键盘中的html相同page@Vishnu我想问的是结构是否相同。。。标签是否在输入之后element@Vishnu支票在哪里boxes@Vishnu问题是标签首先在标记中,然后是输入元素
$('#fieldstep1').find('label').each(function () {
if ($('#' + $(this).attr('for')).is(':checked')) {
var a = $(this).text();
alert(a);
}
});