【发布时间】:2010-08-20 19:16:02
【问题描述】:
我正在使用 DotNetNuke 4.8.x 并希望使用 jQuery。谁能建议我将 jQuery 集成到 DNN 的最佳方法是什么?我将无法将 DNN 版本升级到内置 jQuery 支持的 5。
您的建议将不胜感激。
【问题讨论】:
标签: asp.net jquery dotnetnuke
我正在使用 DotNetNuke 4.8.x 并希望使用 jQuery。谁能建议我将 jQuery 集成到 DNN 的最佳方法是什么?我将无法将 DNN 版本升级到内置 jQuery 支持的 5。
您的建议将不胜感激。
【问题讨论】:
标签: asp.net jquery dotnetnuke
为避免多次加载 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 url。否则,您将收到浏览器警告。始终使用 https 可能更容易。
如果您需要逐页添加jQuery,您也可以按照建议here在页面设置中使用页面标题标签。
另见:
【讨论】: