【问题标题】:avoiding ScriptRegistrar with Telerik components避免使用 Telerik 组件的 ScriptRegistrar
【发布时间】:2012-03-07 08:58:18
【问题描述】:

我有一个使用 Telerik Grid 控件的 MVC 站点。

当我使用他们的 ScriptRegistrar 包含所需的 .js 文件时,一切正常,它包含的文件是:

telerik.common.min.js
telerik.textbox.min.js
telerik.calendar.min.js
telerik.datepicker.min.js
telerik.grid.min.js
telerik.grid.filtering.min.js

但是,如果我包含这些相同的文件使用

<script type="text/javascript" src="/Scripts/telerik.common.min.js"></script>
....*all the others*....

并完全取出 ScriptRegistrar(我想这样做是因为我想改用 MVC4 捆绑支持)网格无法正确加载。

【问题讨论】:

    标签: telerik telerik-grid telerik-mvc


    【解决方案1】:

    问题的原因是 ScriptRegisterar 将一些 JQuery 脚本添加到您的页面中以进行启动操作。我想我有两个解决方法:

    第一:

    您可以通过 ScriptRegisterar 添加“telerik.common.min.js”文件,并通过 MVC 4 捆绑组件添加其他 Telerik 脚本文件。如果这样做,Telerik 会尝试在运行时加载相关的脚本文件。例如,如果您的页面中有一个 ComboBox,Telerik 添加一些脚本以在页面加载后加载脚本。如果之前已加载,它将忽略加载。

    第二次:

    您可以找到并分析注入的启动脚本文件。正如我所检查的,它可能是这样的(但需要进一步的投资)

    <script type="text/javascript">
    //<![CDATA[
    jQuery(document).ready(function(){
    if(!jQuery.telerik) jQuery.telerik = {};
    jQuery.telerik.cultureInfo={"shortDate":"yyyy/MM/dd","longDate":"yyyy/MM/dd","longTime":"hh:mm:ss tt","shortTime":"hh:mm tt","fullDateTime":"yyyy/MM/dd hh:mm:ss tt","sortableDateTime":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","universalSortableDateTime":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","generalDateShortTime":"yyyy/MM/dd hh:mm tt","generalDateTime":"yyyy/MM/dd hh:mm:ss tt","monthDay":"MMMM dd","monthYear":"MMMM, yyyy","days":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"abbrDays":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"shortestDays":["Su","Mo","Tu","We","Th","Fr","Sa"],"abbrMonths":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"months":["January","February","March","April","May","June","July","August","September","October","November","December",""],"am":"ق.ظ","pm":"ب.ظ","dateSeparator":"/","timeSeparator":":","firstDayOfWeek":0,"currencydecimaldigits":2,"currencydecimalseparator":"/","currencygroupseparator":",","currencygroupsize":3,"currencynegative":3,"currencypositive":2,"currencysymbol":"ريال","numericdecimaldigits":2,"numericdecimalseparator":".","numericgroupseparator":",","numericgroupsize":3,"numericnegative":3,"percentdecimaldigits":2,"percentdecimalseparator":".","percentgroupseparator":",","percentgroupsize":3,"percentnegative":0,"percentpositive":0,"percentsymbol":"%"};
    //]]>
    </script>
    

    【讨论】:

      【解决方案2】:

      我认为避免使用脚本注册器是不可能的(或者更确切地说,是可行的)。如果你想单独加载资源文件(.css/.js),你可以这样做。

      您仍然需要页面上的脚本注册器,因为它会根据您在 Telerik 控件(例如 Grid)上所做的自定义“注入”自定义 javascript。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-29
        • 1970-01-01
        相关资源
        最近更新 更多