Плагин XSLT для jquery всегда устанавливает поле пустым

#jquery #jquery-plugins #xslt

#jquery #jquery-плагины #xslt

Вопрос:

У меня есть следующий div, который используется как модальный диалог jquery.

 <div id="searchResultsDialog" title="Search Results">
    <div id="searchResults"></div>
</div>
  

Затем у меня есть следующий код для заполнения этого div результатами преобразования xsl, где как xml, так и xsl строки могут быть проверены на то, что они содержат правильные данные.

 $("#searchResults").xslt({
    xml: resultXML,
    xsl: result.xml
});
  

Всякий раз, когда я запускаю это, я никогда не получаю никаких преобразованных данных. Я прошел через плагин в отладчике, и значение, возвращаемое функцией .xlst, является пустой строкой. Я знаю, что xsl и xml прекрасно работают вместе, потому что, если я просто привяжу таблицу стилей к xml и выведу ее в браузере, это будет отлично работать. Обратите также внимание, что я не получаю никаких ошибок.

Я также пробовал использовать Sarissa, но в итоге всегда получаю окно предупреждения с указанием msxml6.dll : .

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

Комментарии:

1. Вы проверили, используя отдельный XSL transformer, что ваша таблица стилей правильно работает при вводе? Для Windows у Microsoft есть свободно доступный XML Notepad, который сделает это. * nix вы могли бы использовать Xalan или Saxon в командной строке.

2. Да, я взял выходные данные xml, сохранил их в XML-файл и привязал таблицу стилей xsl непосредственно к xml-файлу с помощью: <?xml-stylesheet type=»text / xsl» href=»template.xslt»?>. Он корректно преобразуется как в IE8, так и в XML Notepad.

Ответ №1:

Я устранил проблему, отказавшись от плагина xslt и просто выполнив загрузку в кроссбраузерном режиме.