Как встроить XML-файл в HTML?

5

Я создаю простое веб-приложение для комикса с использованием HTML и JavaScript. Поскольку люди, которые не очень техничны, должны иметь возможность добавлять новые комиксы, я думал об использовании XML файла в качестве файла конфигурации.

Я думал об использовании JSON и решил против него, главным образом потому, что используется запятая (никакая запятая между двумя элементами не разбивает ее, но запятая в конце списка также ее разрывает.).

Однако, теперь мой вопрос: как я могу вставлять этот XML файл? Использовать ли тег <link rel= /> или что-то еще, как тег <embed src= />? И как я могу читать информацию из узлов XML в JavaScript?

Теги:

2 ответа

8

Я бы рекомендовал загрузить библиотеку JavaScript, которая упростит это. jQuery - это один. Если вы включите jQuery на свою страницу, вы можете использовать его для загрузки документа и легко получить доступ к возможностям разбора XML-браузера.

http://api.jquery.com/jQuery.parseXML/ показывает простой пример поиска значений в XML-документе после его загрузки.

Этот сайт http://think2loud.com/224-reading-xml-with-jquery/ дает хороший пример загрузки XML с удаленного сайта. Основная идея - использовать AJAX: здесь крошечный фрагмент для потомков, который будет загружать foo.xml после загрузки html-документа (полагается на jQuery):

$( function() {
    $.ajax({
        type: "GET",
    url: "foo.xml",
    dataType: "xml",
    success: myHandler(xml) {
    }
    });
});
  • 0
    Это действительно правильный ответ. Однако нет ли способов (кросс-браузер) загрузить XML-файл в HTML-файл без необходимости полагаться на стратегии пост-загрузки, такие как AJAX? Я пытаюсь просто включить XML-файл на том же сервере, что и мой HTML-файл.
  • 2
    Нет, на самом деле это невозможно, я боюсь, разумным способом: вы не можете просто встроить XML в качестве разметки в HTML и ожидать, что разные браузеры будут обрабатывать его одинаково. Вы можете попробовать поместить XML в TEXTAREA с помощью style = "display: none", но вам все равно придется его анализировать, я думаю. Интересно: я попытался встроить некоторые случайные теги в документ, и вы можете перемещаться по ним с помощью firebug, поэтому они должны быть в DOM, но я подозреваю, что это ненадежно.
Показать ещё 2 комментария
-2

Используйте тег xml. Пример:

<html>
  <xml Id = msg>
      <message>
        <to> Visitors </to>
        <from> Author </from>
        <Subject> XML Code Islands </Subject>            
      </message>
  </xml>
</html> 
  • 5
    Это остров данных XML. Это недействительный HTML, проприетарная функция Microsoft, и Internet Explorer 10 не поддерживает их. Не используйте это.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню