我有一个复选框列表,在jquery即兴中有一些测试框。在保存更新的值时,我可以看到文本框的updatd数据,但不能查看复选框。
这是代码。请检查并指导我。
更新复选框值的代码:
$("input[type='checkbox']").each(function(){
if($(this).attr('checked')!=undefined){
f.completion=true;
}else{
f.completion=false;
}
});
答案 0 :(得分:0)
你应该引用undefined:
$("input[type='checkbox']").each(function(){
if($(this).attr('checked')!="undefined"){
f.completion=true;
}else{
f.completion=false;
}
});
或者更好地使用这样:
if($(this).attr('checked')!=true){
或者就像这样:
if($(this).attr('checked')){
甚至更好地使用这样:
if(this.checked!=true){
您也可以使用prop()方法代替attr()方法。
答案 1 :(得分:0)
使用prop()之类的,
$("input[type='checkbox']").each(function(){
if($(this).prop('checked')){
f.completion=true;
}else{
f.completion=false;
}
});
答案 2 :(得分:0)
使用.prop('checked')
语句中的if
代替.attr('checked')
并检查true
或false
,另请参阅以下我总是使用的代码段动态生成的复选框。
// check all and unchecked all functions for a group of checkboxes
$(".group1Checkbox").click(function () {
"use strict";
$('.group1Checkbox').prop('checked', true).checkboxradio('refresh');
$('.group1Checkbox').prop('checked', false).checkboxradio('refresh');
});