如何将Check的ID,onClick Checkbox传递给外部javascript文件中的函数。主要目的是点击复选框时点击隐藏按钮。
这是代码:ASCX Page
<asp:CheckBox ID="chkPriority" runat="server" onclick="submitit('btn')"/>
<asp:Label runat="server" CssClass="label" ID="lblPriority" Text="Priority"></asp:Label>
<asp:Button ID="btn" runat="server" OnClick="btn_Click" Height="0" Width="0" CssClass="hidden" />
外部JS档案:
function submitit(id) {
document.getElementById(id).click();
}
答案 0 :(得分:0)
正如你在评论中提到的那样:
我收到错误说,document.getelementById为null或为空
这种情况正在发生,因为在HTML网页上呈现时,asp:Button
的ID与btn
不同。
使用ASCX(Web用户控制文件)时,ASP会将控件的ID呈现为:ctl00$btn
或ctl00$ContentPlaceHolder1$btn
。
选项1 :传递btn
确切的客户ID:
<asp:CheckBox ID="chkPriority" runat="server" onclick="submitit('<%= btn.ClientID %>')"/>
选项2 :使用jQuery,它知道如何处理呈现的ASP控件的ID:
function submitit(id) {
$('#' + id).click();
}
答案 1 :(得分:0)
您忘记在onclick ()
函数
btn_Click
function submitit(id) {
document.getElementById(id).click()
}
function btn_Click() {
console.log("Clicked!")
}
<input type="checkbox" id="chkPriority" runat="server" onclick="submitit('btn')"/>
<button id="btn" runat="server" onclick="btn_Click()" Height="0" Width="0" style="display:none;" />