我的site.master页面中有以下代码:
<head runat="server">
<title><asp:ContentPlaceHolder ID="TitleContent" runat="server" /></title>
<link rel="shortcut icon" href="../../favicon.ico" type="image/x-icon" />
<%--<script src="../../Scripts/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-ui-1.8.5.custom.min.js" type="text/javascript"></script>--%>
<script src="../../Scripts/ckeditor/ckeditor.js" type="text/javascript"></script>
<%-- <script src="../../Scripts/Telerik/telerik.common.min.js" type="text/javascript"></script>
<script src="../../Scripts/Telerik/telerik.tabstrip.min.js" type="text/javascript"></script>--%>
<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
<link href="../../Content/jquery-ui.css" rel="stylesheet" type="text/css" />
<%= Html.Telerik().StyleSheetRegistrar()
.DefaultGroup(g => g
//.Add("Site.css")
.Add("telerik.common.css")
.Add("telerik.windows7.css")
.Combined(true)
.Compress(true))
%>
</head>
在site.master的末尾,我有以下代码;
<% Html.Telerik().ScriptRegistrar()
.DefaultGroup(group => group
.UseTelerikContentDeliveryNetwork(true)
.Combined(true)
.Compress(true)
)
.Render(); %>
<%--<script src="../../Scripts/jquery-1.4.2.min.js" type="text/javascript"></script>--%>
<script src="../../Scripts/jquery-ui-1.8.5.custom.min.js" type="text/javascript"></script>
通过此设置,我的telerik标签正确呈现,我可以浏览标签。但是在不同的页面上(使用相同的site.master)我想使用jquery UI来呈现日期选择器,但这不起作用。 将以下规则启用到我的site.master
的头部后<script src="../../Scripts/jquery-1.4.2.min.js" type="text/javascript"></script>
并从我的site.master底部删除下面的部分,我可以使用datepickers。但是然后导航标签提示不起作用。虽然所有选项卡都能正确呈现。
<% Html.Telerik().ScriptRegistrar()
.DefaultGroup(group => group
.UseTelerikContentDeliveryNetwork(true)
.Combined(true)
.Compress(true)
)
.Render(); %>
我怎样才能同时使用?在我看来,当我使用telerik CDN时,我会得到一些完全不同的东西,然后我禁用它。我已经下载了属于Telerik的所有部件,但即使我将它们添加到我的标题中,也无法让它正常工作。
我需要实现哪些从telerik下载的文件才能使用tabstrip而不使用telerik的CDN?如何在没有任何问题的情况下在jquery UI旁边运行它?
答案 0 :(得分:0)
通过创建自己的scriptregistrar解决了这个问题。之后我在web.config中添加了一个自定义部分,我可以在其中嵌入我需要的脚本。这就像一个魅力,我甚至可以改变加载的脚本序列。
这是web.config中的新内容;
<sectionGroup name="telerik">
<section name="webAssets" type="Telerik.Web.Mvc.Configuration.WebAssetConfigurationSection, Telerik.Web.Mvc"/>
</sectionGroup>
<telerik>
<webAssets useTelerikContentDeliveryNetwork="false">
<scripts>
<add name="DefaultScripts" version="2010.07.20.1" combined="false" compress="false" enabled="true" cacheDurationInDays="365">
<items>
<add source="ckeditor/ckeditor.js"/>
<add source="ckeditor/adapters/jquery.js" />
<add source="Telerik-min/telerik.common.min.js" />
<add source="Telerik-min/telerik.tabstrip.min.js" />
<add source="jquery-ui-1.8.5.custom.min.js" />
</items>
</add>
</scripts>
<styleSheets>
<add name="CoreStyles" version="2010.10.05.01" combined="true" compress="true" enabled="true" cacheDurationInDays="7">
<items>
<add source="Site.css" />
<add source="jquery-ui.css" />
<add source ="telerik.common.css"/>
<add source ="telerik.telerik.css"/>
<add source ="telerik.windows7.css"/>
</items>
</add>
</styleSheets>
</webAssets>
</telerik>
在代码中,我现在可以对javascript和样式表使用以下两个规则
<%=Html.Telerik().ScriptRegistrar().Scripts(scripts => scripts.AddSharedGroup("DefaultScripts"))%>
和
Html.Telerik().StyleSheetRegistrar().StyleSheets(stylesheets => stylesheets.AddSharedGroup("CoreStyles"))