$('#fastbill').click(function(){
if ($('#changevaluebill').attr('checked','true')){
$('#changevaluebill').attr("value","Recharge Now");
}
else {
$('#changevaluebill').attr("value","Proceed");
}
});
复选框条件不起作用。
答案 0 :(得分:2)
有很多方法可以检查是否选中了复选框
您可以使用is(':checked')
尝试:
$('#fastbill').click(function(){
if($('#changevaluebill').is(':checked')){
$('#changevaluebill').val("Recharge Now");
} else {
$('#changevaluebill').val("Proceed");
}
});
其他方式可能是:
$('#changevaluebill').prop('checked')
//布尔
$('#changevaluebill:checked').length
//整数> 0
可以使用$('#changevaluebill:checked').size()
// .size()代替.length
$('#changevaluebill').get(0).checked
//布尔值true
$('#changevaluebill')[0].checked
//布尔值为true(与上述相同)
答案 1 :(得分:1)
这不符合你的想法:
$('#changevaluebill').attr('checked','true')
这不会确定如果它是'true'
的值,它将值设置为'true'
。您可以使用the .is()
function有条件地检查元素的某个方面。像这样:
$('#changevaluebill').is(':checked')
答案 2 :(得分:1)
正如其他人所说,您需要使用.is()
和:checked
。
但是你应该使用.val()来设置输入字段的值
$('#fastbill').click(function () {
$('#changevaluebill').val(function () {
return this.checked ? 'Recharge Now' : 'Proceed'
});
});