【发布时间】:2009-11-05 08:55:58
【问题描述】:
我想从页面后面的代码中执行 javascript 函数。
我有两种方法,首先我可以在后面的代码中调用 html 页面的 javascript。
第二个是我可以在我的代码后面写javascript函数。
但我不是哪个更好,我该怎么做。
请告诉我该怎么做。
【问题讨论】:
-
我真的无法理解你的问题!
标签: asp.net javascript
我想从页面后面的代码中执行 javascript 函数。
我有两种方法,首先我可以在后面的代码中调用 html 页面的 javascript。
第二个是我可以在我的代码后面写javascript函数。
但我不是哪个更好,我该怎么做。
请告诉我该怎么做。
【问题讨论】:
标签: asp.net javascript
ScriptManager.RegisterStartupScript(...)
查看here了解详情
【讨论】:
您可以将 Js 函数作为注册在代码隐藏本身上的脚本来调用。
Page.RegisterStartupScript("key","value")
key 是你想给脚本起的名字,例如。 “页面关闭” 价值是;
stringBuilder str = new StringBuilder()
str.Append("<script = language='javascript'>");
str.Append("window.close();");
str.Append("</script>")
在这里而不是使用 window.close 你可以将你的 js 函数附加为一个字符串,理想情况下,我把这个字符串生成器类放在构造函数中,如果我需要它总是在页面中
然后在要执行脚本的事件处理程序中使用这个
Page.RegisterStartUp("PageClose",str.ToString());
这会将 javascript 放在所呈现页面的结束标记之前
Page.ClientScriptBlock("PageClose",str.ToString());
这会将 JS 函数放置在所呈现页面的开始标记之后
希望对你有帮助
【讨论】:
在您的代码隐藏中尝试以下操作
ClientScript.RegisterStartupScript(GetType(), "scrptName", "javascript: alert('hi'); ", true);
你可以替换 alert('hi');使用您想要从后面的代码调用的 javascript 函数。
【讨论】: