Javascript 在false上选中复选框-jquery
警报正确地将第['checkb']行中的值显示为false,但复选框仍被勾选。我是否缺少某些引用,或者我是否可以不使用行值 试试看Javascript 在false上选中复选框-jquery,javascript,jquery,checkbox,Javascript,Jquery,Checkbox,警报正确地将第['checkb']行中的值显示为false,但复选框仍被勾选。我是否缺少某些引用,或者我是否可以不使用行值 试试看 $('#checkyes').prop('checked', row['checkb']); var check = row['checkb']; alert(check); $('#checkyes').checkboxradio('refresh'); 或 或 问题 行['checkb']具有值字符串true或false不是布尔值 所以$('#checky
$('#checkyes').prop('checked', row['checkb']);
var check = row['checkb'];
alert(check);
$('#checkyes').checkboxradio('refresh');
或
或
问题
行['checkb']
具有值字符串true
或false
不是布尔值
所以$('#checkyes').prop('checked',row['checkb'])代码>将计算为选中
这里的字符串值prop('checked',String)
使其适用于所有情况。根据的答案,我建议:
var chk = (row['checkb'] == 'true') ? true : false; //Or var chk = (row['checkb'] == 'true');
$('#checkyes').prop('checked', chk );
row['checkb']
value string/boolean吗?啊,当然……它可能是一个字符串,谢谢,我现在将更改它,看看它是否工作。问题是SQLite没有一个真/假值,它有0或1个存储为整数。显然,我如何使用prop()解决这个问题?也许使用评估<代码>行['checkb']==1
评估将返回布尔值;您不需要查看它是否为真/假,然后返回真/假。问题是SQLite没有一个真/假值,它有0或1,这是问题所有者告诉您的,这就是为什么我用ZeroWonder检查的原因,所以为什么不评估它有哪些条件(整数0和1,根据问题本身的注释)来表示假/真?无论哪种方式,评估结果都是布尔值,那么为什么不使用它呢?谢谢,我理解@DavidThomas@Mohd很高兴它有帮助。在这个cas中,您只需使用JSON.parse(行['checkb'])
$('#checkyes').prop('checked', (row['checkb'] == 'true') ? true : false);
$('#checkyes').prop('checked', (row['checkb'] == 'true') );
var chk = (row['checkb'] == 'true') ? true : false; //Or var chk = (row['checkb'] == 'true');
$('#checkyes').prop('checked', chk );
$('#checkyes').prop('checked', row['checkb'] == 'true');