Javascript 如果在页面加载和单击时勾选了复选框,则禁用输入
我看了大量的问题,这些问题描述了如何检查复选框是否被选中,但没有一个给出我需要的答案。我想检查页面加载时是否选中该复选框,如果选中,则禁用输入。然后,我需要在页面加载后选中/取消选中该框时更改禁用的输入 这就是我所拥有的:Javascript 如果在页面加载和单击时勾选了复选框,则禁用输入,javascript,jquery,checkbox,input,disabled-input,Javascript,Jquery,Checkbox,Input,Disabled Input,我看了大量的问题,这些问题描述了如何检查复选框是否被选中,但没有一个给出我需要的答案。我想检查页面加载时是否选中该复选框,如果选中,则禁用输入。然后,我需要在页面加载后选中/取消选中该框时更改禁用的输入 这就是我所拥有的: jQuery(document).ready(function($) { if ($('.is-repeat-event').prop('checked')) { $('.event-date').prop('disabled', 'true' );
jQuery(document).ready(function($) {
if ($('.is-repeat-event').prop('checked')) {
$('.event-date').prop('disabled', 'true' );
}
$('.is-repeat-event').change(function(){
var d = this.checked ? 'true' : 'false';
$('.event-date').prop('disabled', d );
});
});
它自身的任一部分都可以工作,但将它们放在一起不起作用(.change事件对输入没有影响)。这是因为禁用属性需要设置为布尔真/假值。您还可以在绑定事件后触发该事件,以查看页面加载中的相关更改:
$('.is-repeat-event').change(function(){
$('.event-date').prop('disabled', this.checked );
}).change();
尝试使用触发器()
:
$(函数(){
$('.is repeat event')。on('change',函数(e){
$('.event date').prop('disabled',this.checked);
}).触发(“变更”);
});代码>
重复
活动日期
如果你把true和false当作布尔值而不是字符串来处理,那就对了!谢谢:)谢谢你的提示,这样更好,但正是字符串阻止了代码的运行working@Ralphonz:很高兴这有帮助。别忘了投票并接受有帮助的答案