Я получаю HIERARCHY_REQUEST_ERR (3) в IE9, только когда пытаюсь добавить элемент из одного документа в другой.
Я создаю свой документ следующим образом:
var xmlDoc = document.implementation.createDocument("","root",null);
и пытаюсь добавить к нему следующее:
$(otherDoc).find("selector_for_nodes_I_want").each(function(){
$(xmlDoc).find("root").append($(this).remove());
});
С Firefox и Chrome все в порядке, но IE9 это не нравится. Идея состоит в том, что xmlDoc - это фильтрованная версия otherDoc, которую я буду хранить в виде строки в sessionStorage. Я надеюсь сохранить XMLHTTPRequests таким образом. Я не слишком заинтересован в возможности сначала конвертировать otherDoc в строку, а затем конвертировать обратно через $ .parseXML (). Я надеюсь на лучший вариант, или, если я думаю об этом все неправильно, я бы тоже услышал этот аргумент.
Спасибо.
Вместо ответа для ФП, есть кто-нибудь с приличным объяснением того, почему необходимо использовать domParser()
или $.parseXML(jqXHR.responseText)
, когда заголовок ответа равен xml уже: Content-Type:text/xml; charset=utf-8
. Почему IE9 предполагает, что я хочу использовать эту нелепую IXMLDOMDocument2
реализацию для анализа моего ответа?