强制 XMLSerializer 不折叠空标签?

dev*_*os1 5 javascript xmlhttprequest xmlserializer internet-explorer-11

是否可以通过任何配置选项告诉 JavaScriptXMLSerializer不要将空标签折叠为自闭合标签?我将一个 xml 字符串输入到 xml 解析器中,然后在对树进行修改后重新序列化它,但是在输入中有一个显式结束标记的地方,它在输出中折叠为一个自结束标记,这会导致问题。

Mic*_*gue 0

好吧,找不到任何东西,但因为我使用的是 JQuery,所以我使用了这个:

$('<div>').append( $(mynode).clone() ).html();
Run Code Online (Sandbox Code Playgroud)

代替

new XMLSerializer().serializeToString(mynode);
Run Code Online (Sandbox Code Playgroud)

JQuery 版本不带有自闭合标签。

注意:我的问题只出现在 IE11 上,所以我使用了:

if (Object.hasOwnProperty.call(window, "ActiveXObject") && !window.ActiveXObject && window.jQuery) {
  // is IE11 && Jquery
  $('<div>').append( $(newnode).clone() ).html();
} else {
  oldnode.outerHTML = new XMLSerializer().serializeToString(newnode);
}
Run Code Online (Sandbox Code Playgroud)