отображать фактический xml с узлами как html, но дружественный к браузеру - PullRequest
0 голосов
/ 05 января 2012

Я хочу отобразить свой ответ XML Ajax в HTML для браузера. Тем не менее, мне нужно, чтобы отображался сам фактический xml, то есть полное дерево с элементами И содержимым, а не только содержимым узлов.

Итак, я хочу, чтобы xml отображался в браузере, например ::100100

<element>content</element>
    <element2>niijojoi</element2>
    <element2>niijojoi</element2>
    <element2>niijojoi</element2>
 //etc more nested elements some with atrributes etc

У меня есть таблица стилей, которая отображает текст, но есть ли у кого-нибудь таблица стилей xsl, которая просто просматривает xml и выводит ее в браузер, как с отступом и т. Д.

спасибо

Ответы [ 3 ]

1 голос
/ 05 января 2012

Если вы получаете ваш XML через Ajax - просто поместите результат в textarea, а затем введите текстовую область так, как вы хотите.

textarea {
  background: #eee;
  width: 500px;
  height: 200px;
}
<textarea>
  
  <note>
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Don't forget me this weekend!</body>
  </note>
  
</textarea>
1 голос
/ 05 января 2012

Предполагая, что вы получаете XML через AJAX и хотите вставить его в элемент на странице (элемент <pre> имеет смысл), все, что вам нужно сделать, это заменить < символы на &lt;перед добавлением содержимого в innerHTML элемента <pre>:

// "result" is the data from the AJAX request.
$('#xml').innerHTML = result.replace('<', '&lt;');
0 голосов
/ 05 января 2012

Это автоматически выполняется браузером.Например, если я создаю файл test.xml и помещаю его в него:

<a>
  <element>content</element>
  <element1>
    <element2>niijojoi</element2>
    <element2>niijojoi</element2>
    <element2>niijojoi</element2>
  </element1>
</a>

и открываю его в Google Chrome, он показывает иерархию XML с отступом.

...