Будет ли XSLT хорошо работать с AJAX? - PullRequest
7 голосов
/ 31 декабря 2008

Это может быть глупый или очевидный вопрос, но весь наш сайт отображается с использованием XSLT для преобразования xml, который создается на лету из запросов к базе данных и других частей. Я начинаю вставлять на сайт много AJAX, чтобы сделать его более динамичным. Есть ли хорошее руководство по xslt и AJAX?

Ответы [ 6 ]

3 голосов
/ 31 декабря 2008

Используете ли вы XSLT на сервере или в браузерах?

Современные браузеры теперь поддерживают преобразования XML из браузера, одним из способов является использование AJAX для извлечения XML вместе с таблицей стилей. Затем вы можете переложить обработку таблиц стилей на клиентские машины. Обязательно кэшируйте таблицу стилей и, возможно, даже отправляйте сжатый XML.

Кодирование должно быть простым, если вы уже знаете, как делать AJAX. Я работал над такой системой 5 лет назад, и это жизнеспособный путь.

2 голосов
/ 30 апреля 2011

Я думаю, что в большинстве ответов отсутствует то, о чем просит ОП. Я думаю, что ОП спрашивает, есть ли способ получить сгенерированный XSLT HTML с помощью AJAX.

Я использую этот подход на Умбрако.

  1. Создание макроса XSLT, который генерирует HTML

  2. Поместите макрос XSLT на пустую страницу

  3. Страница вызова с AJAX

  4. Заменить существующее содержимое HTML

2 голосов
/ 31 декабря 2008

Я бы определенно согласился с предыдущим комментатором, который вздрогнул при мысли о том, что XSLT делает вашу тяжелую работу. Это не будет все это исполнительским. Не поймите меня неправильно, мне очень нравится XSL, но ...

Не так много учебников, но ребята из Mulberry Tech (понятия не имеют, чем они занимаются или кто они) поддерживают серию Кратких справочных руководств для XSLT (и многих других), которые я считаю бесценными.

http://www.mulberrytech.com/quickref/

надеюсь, это поможет ...

1 голос
/ 31 декабря 2008

Я широко использовал эту технику, как на стороне клиента, так и на стороне сервера. Мой опыт показывает, что в большинстве случаев он работает адекватно (но тогда я сравниваю его производительность на стороне сервера с VBScript на страницах ASP).

Там, где проблема производительности, очень важно по возможности исключать из операции синтаксический анализ XML и компиляцию XSLT. Если у вас есть метод на стороне клиента, который использует XSLT для динамического рендеринга элемента на странице, убедитесь, что он не загружает и не компилирует XSLT каждый раз, когда он вызывается. Если вы используете XSLT на стороне сервера, кэшируйте объект процессора XSLT в любой коллекции, поддерживаемой вашей серверной средой.

Вы можете значительно улучшить производительность на стороне клиента, используя Javascript и JSON вместо XML и XSLT. Я не тестировал его, но держу пари, что наибольший прирост производительности связан с тем, что анализ JSON требует гораздо меньше ресурсов процессора, чем анализ XML.

1 голос
/ 31 декабря 2008

весь наш сайт отображается с использованием XSLT для преобразования xml

Эта мысль заставляет меня дрожать. Я работал на двух сайтах, которые использовали XSLT для тяжелой работы при динамическом создании часто используемых страниц, и в обоих случаях это требовало больше усилий по разработке и времени ЦП на каждый доступ, чем стоило.

Безотносительно, www.w3schools.com имеет множество хороших учебных пособий по многим веб-технологиям. У них даже есть тесты.

Если вы хотите использовать AJAX, поддерживая поддержку нескольких веб-браузеров, я настоятельно рекомендую вам проверить: JQuery , Прототип и Dojo

Я думаю, JQuery - лучший, но я оставлю это решение вам.

0 голосов
/ 26 января 2009

Попробуйте использовать tox в качестве примера. Учебник не существует, но если вы посмотрите на приведенный пример, он хорошо прокомментирован и включает AJAX.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...