parseXML возвращает недействительный XML в скрипте Google Apps

0

В файле Javascript в скрипте Google Apps (а не в Google Script, но в Caja-ed Javascript) я хочу проанализировать строку в XML-документе. За пределами ГАС это работает:

$.parseXML("<root><message>Hello World</message></root>");

Но в файле GS:

<script type="text/javascript">
var xml = $.parseXML("<root><message>Hello World</message></root>");
alert(xml);
</script>

parseXML утверждает, что мой xml недействителен. Я предполагаю, что это что-то странное с любой предварительной обработкой GAS с моим JavaScript (Caja?). Есть ли решение? Я пробовал с JQuery 1.11 и 1.9.0

  • 1
    может, потому что отсутствует <?xml version="1.0"?>
  • 0
    Я попробовал это, и это все еще несчастно. Это также не заботится, если вы добавите тег <! DOCTYPE root>.
Теги:
google-apps-script
google-caja

1 ответ

1
Лучший ответ

К сожалению, Caja не поддерживает XML DOM.

Если кто-то заинтересован в том, что потребуется, чтобы внести такую поддержку, основными дополнениями к компоненту DOM, который потребуется:

  • Поддержка пространств имен XML. (В настоящее время предполагается, что все элементы и атрибуты находятся в пространстве имен HTML (X).)
  • Поддержка "инертного" Document, не связанного с виртуальным фреймом (или в языке спецификаций, контекстом просмотра). Для примера разницы в инертном документе вы должны иметь возможность вставить элемент <html:script> без завершения Caja, скрипт должен быть фактически выполнен.
  • 0
    Спасибо! Это отвечает на это. Быстрый вопрос - где находится активная база кода для Caja? Все еще только в коде гугл, или где-то есть каноническое Git-репо?
  • 0
    Да, Caja размещается в Google Code SVN. В последний раз, когда поднималась тема, было общее согласие, что переключение с Subversion на Git было бы разумным, но на самом деле этого не произошло (и потребовало бы некоторых модификаций инструментов рабочего процесса).

Ещё вопросы

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