从主页面加载控件

时间:2009-08-17 17:05:26

标签: c# asp.net controls master-pages

我们使用的“Header控件”包含一个jquery引用。当我尝试利用Master页面中的任何jquery功能时,它会失败,因为尚未添加jquery引用。

有没有办法强制嵌入到母版页中的页眉控件在母版页尝试引用它们之前加载它的资源?

3 个答案:

答案 0 :(得分:1)

我将jquery引用包含在母版页的头部。

或者,如果您不想在每个页面上使用jquery,那么您可以在母版页中执行此操作:

<head runat="server">
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>   
</head>

然后在需要jquery的aspx页面上执行此操作:

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
</asp:Content>

无论哪种方式,你都可以完成同样的事情。它包含HTML中“head”中的jquery文件。这是确保jquery正常工作的最简单方法。

答案 1 :(得分:0)

您可以使用模板主文件中的ScriptManager为JQuery注册javascript包含文件。

您可以使用

  • ScriptManager.RegisterStartupScript或
  • ScriptManager.RegisterClientScriptInclude

另一种方法是在模板主机中,在oninit方法中使用此代码

Page.Header.Controls.Add(new LiteralControl(" <script src="jquery" type="text/javascript"></script> "));

答案 2 :(得分:0)

您可以简单地将JQuery脚本引用移动到母版页本身的aspx中(当然,在顶部)。然后,任何控件都可以访问JQuery。