这是一些说明问题的测试代码。
var $html = '<p>Hi <span class="some-class"><p>Tester</p><p>test2</p></span></p>';
console.log($html);
var obj = $('<div>').html($html);
console.log(obj.html());
第一个“日志”调用的输出是
<p>Hi <span class="some-class"><p>Tester</p><p>test2</p></span></p>
如预期的那样,但第二个出现为
<p>Hi <span class="some-class"></span></p><p>Tester</p><p>test2</p><p></p>
此示例已简化为在此处发布,但在应用程序中,内容“ html”不受我的控制,而是以单个字符串形式出现。 我也尝试使用.append($(html));这有完全相同的问题。