2010-04-08 62 views

回答

2

你会想要使用Page.ClientScript管理器。

以下代码只会在每页上注册一次您的代码。

if (!page.ClientScript.IsClientScriptBlockRegistered(tType, "MyScript")) 
{ 
    page.ClientScript.RegisterClientScriptBlock(tType, "MyScript", sScript); 
} 

您也可以确保* .js文件被添加一次

if (!page.ClientScript.IsClientScriptIncludeRegistered(tType, "MyScriptFile")) 
{ 
    page.ClientScript.RegisterClientScriptInclude(tType,"MyScriptFile","MyJavaScript.js") 
} 
+0

这将在代码隐藏,任何时间都可以接受,ClientScript不会渲染它直到渲染阶段 – Glennular 2010-04-08 18:32:01

+0

它不应该是'如果未注册'而不是'如果注册'? – Steven 2010-04-08 18:39:16

+0

感谢您接收我的错别字! – Glennular 2010-04-08 18:55:54

1

你可以把JavaScript代码放在一个单独的.js文件中,并从网页或母版页引用common.js文件吗?

+0

这更有意义,这是非常普遍的做法了。 – Raja 2010-04-08 18:28:57

+2

我不同意。该函数应该在用户控件中定义,而不是全局用于代码可重用性。这就像在全局而不是在类中定义类成员函数一样。 – Steven 2010-04-08 18:54:42