избегая ScriptRegistrar с компонентами Telerik - PullRequest
1 голос
/ 07 марта 2012

У меня есть сайт MVC, который использует элемент управления Telerik Grid.

Когда я использую их 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), сетка загружается неправильно.

Ответы [ 2 ]

0 голосов
/ 12 августа 2012

Я не думаю, что возможно (или, скорее, возможно) избежать использования регистратора сценариев.Если вы хотите загрузить файлы ресурсов (.css / .js) отдельно, вы можете сделать это.

Вам по-прежнему понадобится регистратор сценариев на странице, поскольку он «внедряет» пользовательский JavaScript в соответствии с настройками, которые вы внесли в элементы управления telerik (например, Grid).

0 голосов
/ 08 марта 2012

Причиной проблемы является то, что ScriptRegisterar добавляет некоторые скрипты JQuery на вашу страницу для действия при запуске. Я думаю, что у меня есть два обходных пути:

первый:

Вы можете просто добавить файл "telerik.common.min.js" через ScriptRegisterar и добавить другие файлы сценариев telerik через компонент связывания MVC 4. Если вы это сделаете, Telerik попытается загрузить соответствующие файлы сценариев во время выполнения. Например, если у вас есть ComboBox на вашей странице, Telerik добавляет несколько сценариев для загрузки сценария после загрузки страницы. Он игнорирует загрузку, если он был загружен ранее.

OR

второй:

Вы можете найти и проанализировать внедренный файл сценария запуска. Как я проверил, это может быть что-то вроде этого (но требуется дальнейшее исследование)

<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>
...