2

我有一个按钮可以关闭 ASP.NET Ajax 表单上的模式对话框。如何在单击同一按钮时添加要调用的客户端功能?

目前萤火虫有这个用于onclick

javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$DefaultContent$btnPaymentActionDetailClose", "", true, "", "", false, false))

我可以用 jQuery 添加一个点击处理程序吗?我不想清除回发,因为它是表单功能所必需的。

我可以用吗

$("#buttonId").bind("click", function(e){
   runAnotherFunction();
});

并且不干扰现有的回发?

实际上说实话,我想在模态对话框关闭时执行该功能。ajax 控制工具包小部件会触发任何类型的事件吗?我知道我可以找到行为并调用显示和隐藏。执行 modal.hide() 时,我可以将我的函数附加到 exec 吗?

感谢您的任何建议,~ck 在圣地亚哥

4

1 回答 1

3

是的,您绝对可以ASP:Button在回发之前在客户端上运行 Javascript。它是 web 控件的OnClientClick属性。

为此,您不需要 jQuery。

<asp:button id="btn" runat="server" onClientClick="SomeJsFunction()" 
     onClick="ServerSideMethod()" Text="Hello Button" />

<script language='javascript'>
     function SomeJsFunction()
      {
         alert('hi');
      }
</script>

如果您有兴趣控制回发是否发生,您可以从 Javascript 函数的结果中返回并检查真/假。

function SomeJsFunction()
{
     var isGood = false;
     return isGood;
}

<asp:button id="btn" runat="server" onClientClick="return SomeJsFunction()" 
     onClick="ServerSideMethod()" Text="Hello Button" />

(感谢拉尔夫在评论中的轻推)

于 2009-11-18T23:40:02.630 回答