ASP.NET按钮导致回发

时间:2009-09-11 14:18:50

标签: asp.net jquery

页面上有一个asp.net按钮。我想这样做:

    $("#btn").click(function(e) {
        e.preventDefault();
        alert('hi');
    }

但警报从未出现过。我只能使用ASP.NET按钮而不是HTML按钮。

3 个答案:

答案 0 :(得分:1)

确保引用按钮的ClientID,而不是“普通”ID。

$("#<%= MyControl.ClientID %>").click(function() {
   alert(...);
   return false;
}

还要确保它位于document.ready()处理程序中:

$(document).ready(function() {
    $("#<%= MyControl.ClientID %>").click(function() {
       alert(...);
       return false;
    }
});

答案 1 :(得分:1)

尝试让方法返回false,并在按钮上点击添加javascript。像这样:

$("#btn").click(function(e) {
    e.preventDefault();
    alert('hi');
    return false;
}

或将其添加为onclientclick函数,如下所示:

 function ClickFunction() {
     alert('hi');
     return false;
 }

 <asp:Button OnClientClick="return Clickfunction();" />

答案 2 :(得分:1)

好的,我在这里得到了答案

Using jQuery to Prevent ASP.NET Server Side Events from Occuring

我错过了$(document).ready(function()。我很傻!