我可以在点击按钮时避免postback
(不要使用page_load方法),
尽管如此,直接调用处理程序。
我尝试了html
按钮,asp button
,link button
,但没有达到我的目标。
有可能吗?
答案 0 :(得分:4)
您可以使用OnClientClick
。它将调用您要执行的函数(jquery函数),然后使用return false来避免pageload。在你的按钮中添加:
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="yourfunction(); return false;" />
如果你想在没有回发的情况下调用函数后面的代码,那么有两种方法可以做到这一点:
使用UpdatePanel。 You can read this tutorial。
或使用页面方法:
向页面添加静态方法,使用WebMethod属性进行修饰:
[WebMethod]
public static void MyMethod(string Param)
{
}
在ScriptManager中启用页面方法:
<asp:ScriptManager EnablePageMethods="True" ... />
然后你可以使用JavaScript(按钮的OnClientClick
事件)从客户端调用它。
PageMethods.MyMethod("value", successCallback, errorCallback);
有关详细信息,请参阅:http://msdn.microsoft.com/en-us/library/bb398998.aspx
希望它会帮助你......!
答案 1 :(得分:0)
如果要禁用回发,请使用javascript 试试下面的代码
<asp:button runat="server".... OnClientClick="myfunction(); return false;" />
通过这样做,它将取消回发