我的情况如下:
我的 aspx 页面上有 OnTextChanged
事件处理程序,它从代码隐藏中调用 TextChanged()
方法。现在,我需要在该 TextChanged()
方法末尾运行一个 javascript 脚本。我怎样才能做到这一点? ScriptManager
是否有任何方法,只有当我更改文本框中的文本时才会执行脚本?
我可能是一个重复的问题,但我找不到脚本管理器是否有任何方法可以在注册后立即运行脚本的信息。
实际的问题是,我需要在 TextChanged() 方法的末尾放置一个脚本,并且该脚本只需将焦点从一个 html 元素设置到另一个即可。
最佳答案
您可以简单地在其后面的代码中发送所需的 JavaScript:
public void TextChanged(object sender, EventArgs e)
{
//...
this.ClientScript.RegisterStartupScript(this.Page.GetType(), "text_changed", "alert('Text was changed');", true);
}
只有在后面的代码中执行 TextChanged()
后才会显示警报。
如果您不在页面实例(例如静态库)中,则假设您位于页面上下文中而不是某些 HTTP 模块或类似内容中,则具有此类代码。
ScriptManager.RegisterStartupScript(HttpContext.Current.Handler as Page, typeof(Page), "text_changed", "alert('Text was changed');", true);
关于c# - C# 是否有任何方法可以在按下按钮时执行 Javascript 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18822218/