特定于内容的JavaScript和母版页

时间:2009-10-24 20:15:56

标签: asp.net javascript master-pages telerik

我的一个内容页面上的Telerik RadGrid需要一些样板脚本。如果我尝试将脚本放在内容元素中,ASP.NET会抱怨,如果我将脚本放在母版页中,它就会抱怨,因为脚本引用的网格尚未存在于母版页中。

我确信Telerik有一些相当简单或简单的东西,但我不知道如何处理这个问题。有人可以给我一些提示吗?

3 个答案:

答案 0 :(得分:2)

您可以在母版页中使用 ScriptManager 控件,在每个内容页面甚至用户控件中如果需要添加特定于页面的javascript,您可以使用 ScriptManagerProxy control将附加到母版页中ScriptManager控件中提到的原始脚本列表。

答案 1 :(得分:1)

我不确定这是否是你想要的,但这就是我要做的。

在母版页上:

    <%@ Master Language="c#" %>
<head>
    <script type="text/javascript>
    function somefuntion(){
    //your code here
    }
    </script>
</head>
...

在内容页面上:

<%@ Page Language="c#" MasterFile="~/Web.Master" %>
<script runat=server>
protected void Page_Load (object sender, eventargs e)
{
ScriptManager.RegisterStartupScript(Page, Page.GetType(), Guid.NewGuid().ToString(), "somefunction()", true)
}
</script>

答案 2 :(得分:0)

您是否尝试过使用ClientScriptManager

添加脚本

在Page_PreRender事件中使用管理器的RegisterClientScriptInclude方法。