Подтвердить что ты не робот

Отображать содержимое XML на странице HTML

Как отображать XML и другие типы данных на одной странице?

    <?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
    <cd>
        <title>Empire Burlesque</title>
        <artist>Bob Dylan</artist>
        <country>USA</country>
        <country>Columbia</country>
        <price>10.90</price>
        <year>1985</year>
    </cd>
</catalog>

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

  • Я получаю XML в STRING не через файл.
  • Я не хочу разбирать его
  • Я хочу отобразить (что это)
  • Если вы скажете о XSLT (просьба привести пример)
  • Я думаю использовать JQuery-плагин (любые примеры?)
4b9b3361

Ответ 1

Простым решением является вставка внутри элемента <textarea>, который сохранит как форматирование, так и угловые скобки. Я также удалил границу с помощью style="border:none;", что делает текстовую область невидимой.

Вот пример: http://jsfiddle.net/y9fqf/1/

Ответ 2

Вы можете использовать старый тег <xmp>. Я не знаю о поддержке браузера, но он все равно должен работать.

<HTML>

your code/tables

<xmp>
    <catalog>
        <cd>
            <title>Empire Burlesque</title>
            <artist>Bob Dylan</artist>
            <country>USA</country>
            <country>Columbia</country>
            <price>10.90</price>
            <year>1985</year>
        </cd>
    </catalog>
</xmp>

Вывод:

your code/tables
<catalog>
    <cd>
        <title>Empire Burlesque</title>
        <artist>Bob Dylan</artist>
        <country>USA</country>
        <country>Columbia</country>
        <price>10.90</price>
        <year>1985</year>
    </cd>
</catalog>

Ответ 3

Если вы обрабатываете контент как текст, а не HTML, то операции DOM должны привести к правильной кодировке данных. Вот как вы это сделаете в jQuery:

$('#container').text(xmlString);

Вот как вы это сделаете со стандартными методами DOM:

document.getElementById('container')
        .appendChild(document.createTextNode(xmlString));

Если вы размещаете XML внутри HTML с помощью сценариев на стороне сервера, обязательно должны быть функции кодирования, позволяющие вам это делать (если вы добавите то, что использует ваша серверная технология, мы можем привести конкретные примеры как вы это сделаете).

Ответ 5

Обновление

2017 Я думаю. textarea отлично работал у меня, используя Spring, Bootstrap и множество других вещей. Получил полезную нагрузку SOAP, хранящуюся в БД, прочитанную Spring и нажав через Spring -MVC. xmp вообще не работает.