0

我有按钮:

html:

 <asp:Button ID="MyBut" runat="server" OnClick="MyBut_Click" CssClass="MyBut" />

C#:

 protected void MyBut_Click(object sender, EventArgs e)
        {....}

JS:

$(document).ready(function () {
    $(".MyBut").click(function () { alert("!"); });
})

现在先执行 js 函数,然后执行 C# 方法。C#方法可以优先吗?

4

2 回答 2

0

所以有人点击页面上的按钮,JS先触发然后C#?这是唯一可能的事件序列。页面上的 JS 处理 HTML 按钮的点击,将事件触发到 Web 服务器,然后 C# 在 Web 服务器上运行。

于 2013-09-19T09:52:39.107 回答
0

并不真地。C# 方法在代码隐藏中调用(您使用的是 ASP.NET),并且仅在服务器执行后端代码以形成更新的页面时重新加载页面时才会调用该方法。

您可以做的是让服务器端代码(C# 代码)生成客户端 JavaScript,然后在用户浏览器中重新加载页面时执行这些 JavaScript。当然,该代码将在服务器端 C# 代码之后执行。有关示例,请参见Inject Javascript from asp.net code behind files

另一种选择是您使用 AJAX 调用服务器端代码(而不是代码隐藏)。然后你可以自己确定顺序。有关 ASP.NET 的 AJAX 的更多信息,请参阅http://www.asp.net/ajax

于 2013-09-19T09:55:27.310 回答