Шаблоны Jquery - PullRequest
       8

Шаблоны Jquery

3 голосов
/ 14 ноября 2010

Я использую шаблоны Jquery для отображения входящих данных JSON. Я хочу загрузить шаблон в кешируемый внешний файл.Как мне это сделать?

ОБНОВЛЕНИЕ
http://encosia.com/2010/12/02/jquery-templates-composite-rendering-and-remote-loading/
очень близко к решению, с которым я закончил, я просто использовал вместо этого iframe;

Ответы [ 5 ]

3 голосов
/ 14 ноября 2010
2 голосов
/ 07 января 2011

Я использую вызовы ajax для ресурсов на стороне сервера, в этом примере aspx

$.ajax({ 
   url: "myprog.aspx", 
   data: { whichTemplate: "template I'm Looking for" }, 
   success: function(result) { 
                 // result is the text string containing either a single template or a delimated list of templates 
                 $.template('templatename', result); 
            } , 
   dataType: "text"
}); 
2 голосов
/ 14 ноября 2010

Кажется, есть несколько методов для реализации этого, каждый из которых имеет свои преимущества / недостатки.

1) Использовать встроенный блок скрипта.Это принесло бы блоки шаблона с каждой загрузкой страницы.Если родительская страница не кэшируется, она может быть перегружена несколькими шаблонами

2) Получать доступ к шаблонам через объект глобальной переменной во внешнем файле JavaScript.Это можно кэшировать, но строки шаблонов трудно расшифровать

3) Строки шаблона входят в состав ответа JSON.Возникает вопрос, почему бы не использовать шаблоны на стороне сервера?

4) Использовать статический iframe и компилировать шаблоны при загрузке iframe - это кэшируется, шаблоны доступны для чтения / редактирования, политика одного и того же происхождения может быть проблемой, еслистатические элементы размещены в другом домене

Я наконец выбрал подход iframe, но слишком неопытен, чтобы осознавать все подводные камни.

Спасибо

1 голос
/ 14 ноября 2010

может быть, этот код может помочь:

<script id="entry_show_template" defer type="text/html">
  <div class="entry">
    Age: <span class="age"></span> <a class="name" href="#"></a>
  </div>
</script>

Может быть, вы могли бы использовать этот код также с атрибутом src, скрипты доступны так:

$('#entry_show_template') 
0 голосов
/ 02 сентября 2011

См. Мой ответ для шаблонов jQuery - где их разместить?

В дополнение к статье Дейва Уорда , которую вы упомянули в своем вопросе, она ссылается на некоторые дополнительные приемы из Введение в шаблоны jQuery, Стивена Вальтера . В частности, в нем рассказывается, как один раз получить шаблон и кэшировать его скомпилированную версию.

...