代码之家  ›  专栏  ›  技术社区  ›  LoveMeSomeCode

javascript禁用我的回发

  •  0
  • LoveMeSomeCode  · 技术社区  · 16 年前

    我有一个ASP.NET复选框,我想在它发回之前运行一些javascript。

    类似:

    <asp:CheckBox ID="chkSelected" runat="server" AutoPostBack="True" OnCheckedChanged="chkSelected_CheckedChanged" />
    

    但是我想在用户单击它时运行一个JS确认对话框,如果他们取消选中它,我想询问他们是否确定,如果确定,请回发并运行我的服务器端代码。如果他们说不,不要回邮。

    有人知道“简单”的方法吗?

    2 回复  |  直到 16 年前
        1
  •  2
  •   SLaks    16 年前

    你可以添加一个 onclick 汉德勒:

    <asp:CheckBox ... onclick="if (!this.checked && !confirm('Are you sure?')) return false;" />
    

    (我相信这会奏效,但我没有尝试过)

    您还可以在javascript中添加事件。(更有可能起作用)
    使用jQuery:

    $('#<%=chkSelected.ClientID%>').click(function() {
        return this.checked || confirm('Are you sure?');
    });
    
        2
  •  0
  •   ZippyV    16 年前

    我还没有用复选框尝试过这个方法,但是尝试看看您的asp:checkbox是否有onclientClick属性。如果有,请在其中输入javascript函数的名称。然后在你的javascript中你可以 return true 如果发生回发,或 return false 如果要取消回发。