在ModalPopupExtender控件中,我有一个复选框。选中该复选框后,我希望启用弹出窗口中的“提交”按钮,否则将被禁用。
<asp:CheckBox ID="chkUser" TabIndex="0" runat="server" CssClass="cCheckBox" ClientIDMode="Static" onchange="Checked();"/>
src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type = "text/javascript">
function Checked() {
if(document.getElementById('<%=chkUser.ClientID%>').checked) {
document.getElementById('<%=btnSubmit.ClientID%>').EnableSubmitButton = true;
}
}
</script>
我收到以下错误。
0x800a1391 - JavaScript运行时错误:检查未定义的错误。
答案 0 :(得分:0)
将此代码移至body标记的末尾
<script type = "text/javascript">
function Checked() {
if(document.getElementById('<%=chkUser.ClientID%>').checked) {
document.getElementById('<%=btnSubmit.ClientID%>').disabled = true;
}
}
</script>
此外,您可能需要处理复选框更改事件。
document.getElementById('<%=chkUser.ClientID%>').onchange = Checked;
答案 1 :(得分:0)
点击更改为onchange="Checked(this);"
。
<asp:CheckBox onchange="Checked(this);" ID="chkUser" TabIndex="0" runat="server" CssClass="cCheckBox" ClientIDMode="Static"/>
<script type="text/javascript">
function Checked(ele) {
document.getElementById('<%=btnSubmit.ClientID%>').disabled = !ele.checked;
}
</script>
答案 2 :(得分:0)
您可以在复选框上使用jquery'change
'事件委派,并使用其属性选中以确定是否禁用该按钮。
$().ready(function(){
$('#<%=chkUser.ClientID%>').on('change',function(){
$('#<%=btnSubmit.ClientID%>').prop("disabled",!$(this).prop("checked"));
});
});