检测asp.net和javascript中是否选中复选框
我在asp:面板中有一个复选框控件,如下所示:检测asp.net和javascript中是否选中复选框,javascript,jquery,asp.net,checkbox,Javascript,Jquery,Asp.net,Checkbox,我在asp:面板中有一个复选框控件,如下所示: <asp:Panel ID="chk" runat="server" Visible="false" CssClass="checkbox checkbox-primary checkbox-single"> <asp:CheckBox runat="server" ID="valCheck" /> </asp:Panel> 调用SaveInput函数时,需要传递0(如果未选中复选框)或1(如果选中)。
<asp:Panel ID="chk" runat="server" Visible="false" CssClass="checkbox checkbox-primary checkbox-single">
<asp:CheckBox runat="server" ID="valCheck" />
</asp:Panel>
调用SaveInput函数时,需要传递0(如果未选中复选框)或1(如果选中)。我注释掉的行不起作用
任何反馈都将不胜感激 在普通javascript中
var isChecked= document.getElementById("myCheck").checked;
isChecked
将是true
如果选中和false
如果未选中,则id不完全是valCheck
当您使用runat=“server”
元素id更改时(检查元素以查看新id),然后需要使用jquery选择器,如:
$("select[id*='valCheck']")
或
或者,您可以简单地在asp元素中添加attrClientIdMode=“Static”
<asp:CheckBox runat="server" ID="valCheck" ClientIdMode="Static" />
在浏览器中检查您是否在复选框中获得了与id
相同的#valCheck
,try$('')。如果您在同一个aspx页面中编写了js代码,则(':checked')
。我认为asp.net在将页面发送到浏览器时会更改id,因此请使用clientMode=“static”
在复选框字段中,然后重试。@Prashant Shirke我的js代码在另一个文件中!谢谢你的回答。ClientMode=“Static”在我的情况下不起作用,它会破坏我的复选框的外观和感觉!我在每页都有多个复选框,因此我需要不断检查复选框的状态。$(“select[id*='valCheck'])将帮助我查看此输入是否是一个复选框,现在我需要为每个复选框选中/取消选中。这需要循环吗?@zezz不客气,大多数时候我也使用jquery选择器。对不起,我编辑了我的第一条评论,我想我会给你发送一个通知,以防你错过@zezz您可以使用jquery的。每个,检查所有复选框:$('input[type=checkbox]')。每个(函数(){if(this.checked){…})代码>var-val$('input[type=checkbox]')。每个(函数(){if(this.checked){val=1;}else val=0;})总是返回true(val=1),即使我没有选中复选框!!
$("select[id$='valCheck']")
<asp:CheckBox runat="server" ID="valCheck" ClientIdMode="Static" />