如何不回发按钮单击

时间:2019-01-31 08:58:58

标签: asp.net html5

我想防止这种现象...

回传当按钮被点击

我想在单击按钮时执行结果,并防止屏幕刷新。

v8
<asp:Button ID="DomainSeachButton" runat="server" Text="search" 
            OnClick="btnDomainSearch_Click" OnClientClick="onMySearch();" Width="69px" /> 
function onMySearch() {
    // __doPostBack("DomainSeachButton", "client");
    var r = confirm("Press a button!")
    if (r==true)
    {
         alert("You pressed OK!")
         return true;
    }

3 个答案:

答案 0 :(得分:0)

尝试将btnDomainSearch_Click更改为

$("#btnDomainSearch_Click").click( function(e){
    e.preventDefault();

    //Whatever
})

答案 1 :(得分:0)

您可以在特定按钮中使用AutoPostBack="false"

如果AutoPostBack设置了false,它将不会向服务器发送请求,否则会向服务器发送请求。

<asp:Button ID="DomainSeachButton" runat="server" Text="search" AutoPostBack="false" OnClick="btnDomainSearch_Click" OnClientClick="onMySearch();" Width="69px" />

请阅读本文以获取更多信息More Details

答案 2 :(得分:0)

您可以轻松地与ASP的控制的UpdatePanel实现这一点,实际上不会刷新整个页面,但页面选择的内容,例如:

<asp:ScriptManager ID="MainScriptManager" runat="server" />
<asp:UpdatePanel ID="updtpnl" runat="server">
  <ContentTemplate>
    <asp:Button
      ID="DomainSeachButton"
      runat="server"
      Text="search"
      OnClick="btnDomainSearch_Click"
      OnClientClick="onMySearch();"
      Width="69px"
      AutoPostBack="true"
    />
    <asp:GridView ID="GridView1" runat="server"></asp:GridView>
  </ContentTemplate>
  <Triggers>
    <asp:AsyncPostBackTrigger ControlID="DomainSeachButton" EventName="Click" />
  </Triggers>
</asp:UpdatePanel>