在DotNetNuke 4.8.x中包含jQuery的最佳方法是什么?

时间:2010-08-20 19:16:03

标签: asp.net jquery dotnetnuke

我正在使用DotNetNuke 4.8.x并想使用jQuery。任何人都可以建议我将jQuery集成到DNN的最佳方法是什么?我无法将DNN版本升级到5,它内置了对jQuery的支持。

非常感谢您的建议。

1 个答案:

答案 0 :(得分:2)

为避免多次加载jQuery,最好使用客户端脚本,例如给定here的脚本。

在服务器端,您可以在Page.Init或Page.Load事件期间在页眉中加载jQuery库:

Protected Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Init
   Page.Header.Controls.Add(...)
End Sub

您可能希望使用辅助方法来创建HtmlGenericControl,例如

Public Function HeadScriptResource(ByVal src As String) As HtmlGenericControl

    Dim Include As New HtmlGenericControl("script")
    Include.Attributes.Add("type", "text/javascript")
    Include.Attributes.Add("src", src)
    Return Include

End Function

这样,您可以使用源路径作为参数将任何脚本添加到标头:

Page.Header.Controls.Add(HeadScriptResource("/resources/shared/scripts/jquery/jquery.min.js"))

DNN 4.9.1及更高版本附带jQuery,位于

  

/resources/shared/scripts/jquery/jquery.min.js

如果您需要的每台服务器都具有Web访问权限(在企业环境中不明显),则可以使用托管jQuery,例如: http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js

使用托管jQuery,如果网站使用https,则必须使用https网址。否则,您将收到浏览器警告。总是使用https可能更容易。

如果您需要逐页添加jQuery,您还可以按照建议here在页面设置中使用页眉标记。

另见: