输入上的禁用属性使其成为 "forget" onclick 事件
disabled attribute on input makes it "forget" onclick event
我明白了JS/HTML
<div>
Are you sure ? <input type="checkbox" id="Confirm" onClick="doCheck();"/>
</div>
<input value="3" id="SubmitT" type="button" onClick="MainFunction(34);" disabled>
已编辑:错字代码
function doCheck(){
$("#SubmitT").prop('disabled',$("#Confirm").is(":checked"));
}
我希望它做的是 set/unset disabled 属性和 MainFunction(34)
根据是否存在 disabled 来触发。
它所做的是在我切换复选框输入后它忘记了绑定到 onclick 的事件,不断抛出关于 MainFunction
未知的错误。
jquery 的版本是 1.11.1
尝试做这样的事情:
document.getElementById('SubmitT').disabled = true;
就像您通过 js 将其设置为禁用一样。(在页面加载时执行该命令)并使用 MainFunction()
控制禁用的 属性。
既然你被标记为 jQuery,最好在 jQuery
中使用 change()
事件处理程序
$('#Confirm').change(function() {
$("#SubmitT").prop('disabled', !this.checked);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>
Are you sure ?
<input type="checkbox" id="Confirm"/>
</div>
<input value="3" id="SubmitT" type="button" onClick="MainFunction(34);" disabled>
您显示的代码工作正常。
您确定您的 MainFunction
没有问题吗?只需使用您的代码并添加一个 MainFunction
即可 alert
s 输入工作得很好并且不会抛出任何错误,如下面的代码片段所示。
此外,您不希望在选中 'Are you sure?' 复选框时能够单击提交按钮吗?为此,我将其更改为 !$("#Confirm").is(":checked")
.
function doCheck() {
$("#SubmitT").prop('disabled', !$("#Confirm").is(":checked"));
}
function MainFunction(input) {
alert(input);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
Are you sure ?
<input type="checkbox" id="Confirm" onClick="doCheck();" />
</div>
<input value="3" id="SubmitT" type="button" onClick="MainFunction(34);" disabled>
我明白了JS/HTML
<div>
Are you sure ? <input type="checkbox" id="Confirm" onClick="doCheck();"/>
</div>
<input value="3" id="SubmitT" type="button" onClick="MainFunction(34);" disabled>
已编辑:错字代码
function doCheck(){
$("#SubmitT").prop('disabled',$("#Confirm").is(":checked"));
}
我希望它做的是 set/unset disabled 属性和 MainFunction(34)
根据是否存在 disabled 来触发。
它所做的是在我切换复选框输入后它忘记了绑定到 onclick 的事件,不断抛出关于 MainFunction
未知的错误。
jquery 的版本是 1.11.1
尝试做这样的事情:
document.getElementById('SubmitT').disabled = true;
就像您通过 js 将其设置为禁用一样。(在页面加载时执行该命令)并使用 MainFunction()
控制禁用的 属性。
既然你被标记为 jQuery,最好在 jQuery
中使用change()
事件处理程序
$('#Confirm').change(function() {
$("#SubmitT").prop('disabled', !this.checked);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>
Are you sure ?
<input type="checkbox" id="Confirm"/>
</div>
<input value="3" id="SubmitT" type="button" onClick="MainFunction(34);" disabled>
您显示的代码工作正常。
您确定您的 MainFunction
没有问题吗?只需使用您的代码并添加一个 MainFunction
即可 alert
s 输入工作得很好并且不会抛出任何错误,如下面的代码片段所示。
此外,您不希望在选中 'Are you sure?' 复选框时能够单击提交按钮吗?为此,我将其更改为 !$("#Confirm").is(":checked")
.
function doCheck() {
$("#SubmitT").prop('disabled', !$("#Confirm").is(":checked"));
}
function MainFunction(input) {
alert(input);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
Are you sure ?
<input type="checkbox" id="Confirm" onClick="doCheck();" />
</div>
<input value="3" id="SubmitT" type="button" onClick="MainFunction(34);" disabled>