Как сделать фрейм оглавления в XSL? - PullRequest
0 голосов
/ 12 декабря 2008

У меня есть файл XML, для которого я создаю таблицу стилей XSL.

Я хотел бы иметь два кадра и сделать два прохода для данных, первый из них создал бы Оглавление в левом кадре, а второй имел бы массив данных справа.

Я могу сделать два прохода, проблема в том, чтобы поместить их в отдельные кадры. HTML-элемент frame принимает источник; Я не могу поместить свой источник прямо туда.

Я могу придумать несколько способов обойти это, ни один из которых мне не нравится, поэтому я хотел посмотреть, нашел ли кто-нибудь способ сделать это.

Ответы [ 3 ]

0 голосов
/ 15 декабря 2008

Это были относительно стабильные данные, которые генерировались скриптом, поэтому я закончил тем, что создал отдельные таблицы стилей для оглавления и главного окна, а затем использовал их для создания html-файлов для каждого из них после того, как я сгенерировал html .

Тогда моя главная страница была просто статической HTML-страницей, которая ссылалась на эти сгенерированные HTML-файлы.

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

0 голосов
/ 15 декабря 2008

Как уже было сказано, для этого вам нужно 3 файла.

В XSLT 2.0 вы можете создавать несколько выходных файлов из одной таблицы стилей xsl, используя инструкцию xsl: result-document.

В XSLT 1.0 у вас нет этой функции, но в зависимости от процессора это может быть возможно. Например, для Xalan см. http://xml.apache.org/xalan-j/extensions_xsltc.html#redirect_ext

0 голосов
/ 12 декабря 2008

Если вы хотите использовать фреймы, вам нужно три отдельных файла.

  1. Файл кадра. Это просто строгий HTML-файл
  2. файл для оглавления
  3. Файл для вашего контента

Первый, как указано, это просто файл HTML. Вторые два - XSL-файлы, которые в конечном итоге превратятся в HTML. Хорошее руководство по кадрам - здесь, в W3Schools .

РЕДАКТИРОВАТЬ : Чем больше я об этом думаю, тем больше мне не нравится решение. Требуется, чтобы XSL-парсер запускался дважды при каждом обслуживании начальной страницы

Задумывались ли вы об использовании CSS или таблиц для создания макета? Есть несколько действительно хороших CSS-шаблонов с открытым исходным кодом , летающих здесь по Интернету.

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