2014-01-20 7 views
0

EDIT: таблица работает, но она отображается сразу справа на моем заголовке, а не внизу, как хотелось бы. Я пробовал использовать два разных браузера (Firefox и Chrome), и он все еще не отображается внизу. Я могу что-нибудь сделать?Отображение таблицы таблиц стилей XSLT после заголовка?

XML

<bbgame> 
    <gametracker gameid="1288244"></gametracker> 
    <venue gameid="GAME11" 
      visid="MSU" visname="MISSOURI STATE" 
      homeid="LOU" homename="LOUISVILLE" 
      date="12/17/2013" location="KFC Yum! Center, Louisville, KY" 
      time="9:05PM" attend="21335" schednote="" start="" end="" duration="" 
      leaguegame="N" neutralgame="N" postseason="N"> 
</venue> 
</bbame> 

XSLT

My Code so Far.... <xsl:template match="//bbgame"> 
    <html> 
    <body> 
    <h1>Official Basketball Box Score -- Game Totals</h1> 
    <table border="1"> 
    <tr> 
     <td><xsl:value-of select="//venue/@visname"/> vs. </td> 
     <td><xsl:value-of select="//venue/@homename"/></td> 
    </tr> 
    </table>  
    </body> 
    </html> 
    </xsl:template> 
    </xsl:stylesheet> 

И это то, что я вижу, как выход .. Официальный Баскетбол Бокс Score - Игра TotalsMISSOURI ГОСУДАРСТВЕННАЯ против Луисвилл

+0

Просто уточнить. Вы хотите использовать XSLT для преобразования XML-документа в HTML-документ с таблицей? –

+1

Вы дважды закрываете свой тег ''. – Zzyrk

+0

@ColinD Да, сэр. Я практикую, потому что у меня есть огромный документ для работы. Мне бы хотелось, чтобы таблица с двумя разными командами находилась под заголовком «Официальный баскетбольный бокс». –

ответ

0

Ваш XML ввод не является корректным.

  • Вы слишком рано закрываете элемент gametracker.
  • </bbame>, конечно, должен прочитать </bbgame>

Эти виды ошибок, как правило, обнаруживаются процессорами XSLT и в большинстве браузеров.

С этим входом:

<bbgame> 
    <gametracker gameid="1288244"> 
    <venue gameid="GAME11" 
      visid="MSU" visname="MISSOURI STATE" 
      homeid="LOU" homename="LOUISVILLE" 
      date="12/17/2013" location="KFC Yum! Center, Louisville, KY" 
      time="9:05PM" attend="21335" schednote="" start="" end="" duration="" 
      leaguegame="N" neutralgame="N" postseason="N"> 
</venue> 
</gametracker> 
</bbgame> 

Ваше преобразование работает нормально, вы получите следующий результат:

<?xml version="1.0" encoding="UTF-8"?> 
<html> 
    <body> 
     <h1>Official Basketball Box Score -- Game Totals</h1> 
     <table border="1"> 
     <tr> 
      <td>MISSOURI STATE vs. </td> 
      <td>LOUISVILLE</td> 
     </tr> 
     </table> 
    </body> 
</html> 

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

+0

Спасибо, я исправил этот плохо отформатированный XML. Есть ли способ переместить эту таблицу, чтобы она отображалась под заголовком, а не прямо справа от нее. На данный момент я вижу. Официальный баскетбольный бокс - Итоги игрMISSOURI STATE vs. LOUISVILLE –

+0

Когда я просматриваю его с помощью Firefox, таблица отображается под заголовком. Что вы имеете в виду? Лучше всего было бы объяснить это с точки зрения: _ должно ли изменение вывода HTML соответствовать вашим ожиданиям? Отредактируйте исходное сообщение. –

+0

Я отредактировал мой оригинальный вопрос. Благодарим за ваше предложение. Я попробовал открыть это в Firefox, а также в Chrome, и он по-прежнему не отображается внизу. Могу ли я стиль с CSS, чтобы убедиться, что он правильно расположен? Я также ценю ваши комментарии по моему XSLT-коду. Я все еще участвую и нуждаюсь в корректировке кода, чтобы он был немного более красноречивым. –

Смежные вопросы