jQuery删除包装元素

时间:2016-06-28 08:19:36

标签: javascript jquery

我正在使用jquery $ .get加载一个html文件并包装响应。但是jQuery删除了我的包装器。

我做了以下示例来说明我的问题: https://jsfiddle.net/pwm76bp6/

每个不想在此处打开链接的人都是示例代码:

alert($('<div><div>Hallo</div></div>').html());

我希望应该提醒整个字符串。问题是什么?

5 个答案:

答案 0 :(得分:2)

您需要阅读console.log($('<div><div>Hallo</div></div>').prop('outerHTML'));属性。

&#13;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
person.firstname = null
&#13;
&#13;
&#13;

答案 1 :(得分:0)

用元素动态包装它,然后获取包装元素的html()。

alert($('<div><div>Hallo</div></div>').wrap("<div></div>").parent().html());

答案 2 :(得分:0)

它不会删除您的包装器。 jQuery html()确实返回元素的contents

当您$('<div>my content</div>')创建元素时,然后,您将获得带有html()的内部html,然后在您的示例中提醒您。

答案 3 :(得分:0)

使用您的代码,您将获得外部元素html的{​​{1}}。外<div>的内容为<div>

您可以使用默认属性执行所需操作:

<div>Hallo</div>

答案 4 :(得分:0)

函数“html”确实返回给定元素的html内容。在你的情况下,“html()”返回外部div的内容,它排除了外部本身。

你可以通过包装你的html来解决这个问题:

var html = '<div><div>Hallo</div></div>';
var outerHtml = $(html).wrap('<div />').parent().html();

希望这会有所帮助。