执行 C# 事件处理程序,然后执行该 js 函数

本文关键字:执行 js 函数 然后 事件处理 程序 | 更新日期: 2023-09-27 18:32:01

我有按钮:

.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# 方法可以先行吗?

执行 C# 事件处理程序,然后执行该 js 函数

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

您可以做的是让服务器端代码(C# 代码)生成客户端 JavaScript,然后在用户浏览器中重新加载页面时执行该 JavaScript。当然,该代码将在服务器端 C# 代码之后执行。有关示例,请参阅从文件背后的 asp.net 代码中注入 Javascript。

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

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