[英]Check if a JQuery mobile checkbox is checked
我有一个复选框列表,我想获得每个复选框的状态。 清单在这里:
<div data-role="fieldcontain">
<fieldset data-role="controlgroup">
<input type="checkbox" name="Sunday" id="Sunday-1" class="custom" />
<label for="Sunday-1">Sunday</label>
<input type="checkbox" name="Monday" id="Monday-1" class="custom" />
<label for="Monday-1">Monday</label>
<input type="checkbox" name="Tuesday" id="Tuesday-1" class="custom" />
<label for="Tuesday-1">Tuesday</label>
</fieldset>
</div>
我通常使用此引号检查复选框的状态:
var isChecked = $('#CheckboxID').is(':checked');
但在我的情况下,是否有一种方法可以立即获取“Jquery Mobile”复选框的状态?
你可以做
var status = $('input[type="checkbox"]').filter('.custom').map(function(){
return $(this).is(':checked') ? 1 : 0;
});
然后status array
将以相同的顺序为每个复选框提供一个条目, 0
表示未选中, 1
表示已选中。 它没有多大用处,因为你没有关于数组中复选框的其他信息。
如果你想根据status
执行操作,可以使用.each()
代替
$('input[type="checkbox"]').filter('.custom').each(function(){
if($(this).is(':checked')){
// perform operation for checked
}
else{
// perform operation for unchecked
}
});
UPDATE
如果要构建具有复选框name and status
的array of objects
可以使用
var status = $('input[type="checkbox"]').filter('.custom').map(function(){
var name = $(this).attr('name');
if($(this).is(':checked'))
return { 'name':name, 'status' : 'Checked'};
else
return { 'name':name, 'status' : 'UnChecked'};
});
console.log(status);
我有这个代码。 我认为你应该适应你的情况。
$('#formfriends input[type=checkbox]').each(function() {
if ($(this).attr('checked'))
//$(this).attr('disabled' , true);
// do what you want here
});
你可以使用jQuery的每个函数http://api.jquery.com/jQuery.each/
.each函数将帮助您遍历复选框
对于jQm 1.3,我必须检查包装器div中标签上的类
samplecode(已由jQm呈现):
<div class="ui-checkbox">
<label data-corners="true" data-shadow="false" data-iconshadow="true" data-wrapperels="span" data-icon="checkbox-off" data-theme="a" data-mini="false" class="ui-checkbox-off ui-btn ui-btn-corner-all ui-fullsize ui-btn-icon-left ui-btn-up-a">
<span class="ui-btn-inner">
<span class="ui-btn-text">
myLabel
</span>
<span class="ui-icon ui-icon-checkbox-off ui-icon-shadow"> </span>
</span>
</label>
<input type="checkbox" name="flip-num" class="flip-num">
</div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.