2011-10-12 66 views
0

我正在ASP.Net环境中构建应用程序,我想从C#后面的代码调用JavaScript函数。我试图使用ScriptManager.RegisterStartupScript()方法,它打错误,说“名称'ScriptManager'不存在于当前的竞争”,我已经包含命名空间System.Web.UI,但仍然有这个错误。无法调用JavaScript函数从后面的代码

任何想法如何发生?或者有更好的解决方法,而不是使用ScripManager从代码背后触发JavaScript函数?

感谢您的高级。

+1

从你的代码中究竟(从哪个事件处理函数)中调用'ScriptManager.RegisterStartupScript'方法? – Amry

+1

把一些代码请 – Boomer

回答

0

试试这个,

Page.RegisterStartupScript("some_name","javascript function enclosed with script tag") 
0

在这里阅读更多MSDN上有关的RegisterStartupScript http://msdn.microsoft.com/en-us/library/asz8zsxy.aspx

另外,还要确保你在页面上的形式。如果页面上没有表单,那么脚本将无法执行。

+0

我想这可能是由于页面上没有FORM,但用户crontrol,我用Page.ClientScript.RegisterStartUpScript()和JavaScript函数不起作用。任何解决方法? – sams5817

0

你的问题不清楚。代码背后的代码执行时,是否要同时调用JavaScript函数?如果是这种情况,那么这是不可能的。 Javascript在客户端运行,代码在服务器端运行。控制是客户端或服务器端,它不能同时在两边。

ScriptManager.RegisterStartupScript的功能是,在浏览器加载文档时,它会在页面底部添加一段脚本。这将允许您从页面的JavaScript代码中调用新添加的JavaScript代码。这使您可以在后端创建自定义JavaScript代码并将其推送到页面加载。

如果还有其他情况,请澄清。

1
ClientScriptManager cs = Page.ClientScript; 
cs.RegisterClientScriptBlock(GetType(), "GenerateMatrixText", script, true); 
+0

如果这不起作用,那么可能会出现安装的ajax版本问题 – Chief

相关问题