如何使用 jQuery 将元素转换为字符串
我不需要innerHTML,我需要innerHTML 带有封闭标签。让我们写一些例子:
<div id="1" style="qwe"><span class="1"></span></div>
<div id="2" style="asd"><span class="2"></span></div>
<div id="3" style="zxc"><span class="3"></span></div>
我可以通过 id 获取元素:
$("#1")
我如何获取这样的字符串:
<div id="1" style="qwe"><span class="1"></span></div>
当然 html() 不起作用,因为它只会返回 span。
I don't need innerHTML i need innerHTML with enclosing tags. Lets write some example:
<div id="1" style="qwe"><span class="1"></span></div>
<div id="2" style="asd"><span class="2"></span></div>
<div id="3" style="zxc"><span class="3"></span></div>
I can get element by id:
$("#1")
And how can i get string like that:
<div id="1" style="qwe"><span class="1"></span></div>
Of course html() doesn't work becouse it will return only span.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
你可以这样做:
you could do something like this:
像这样的东西应该可以正常工作:
这是一个工作小提琴。
其他信息
请参阅http://www.yelotofu.com/ 2008/08/jquery-outerhtml/ 为原创文章。
Something like this should work fine:
Here's a working fiddle.
Additional Info
See http://www.yelotofu.com/2008/08/jquery-outerhtml/ for original article .
使用这个 jQuery 插件: https://github.com/brandonaaron/ jquery-outerhtml/blob/master/jquery.outerhtml.js
使用如下:
Use this jQuery plugin: https://github.com/brandonaaron/jquery-outerhtml/blob/master/jquery.outerhtml.js
Use it as follows:
您可以使用
outerhtml
,但在JavaScript
中使用DOM
而不是jQuery
,例如:jsbin 代码来演示:
http://jsbin.com/obutul/edit#javascript,html,live
You can use
outerhtml
but inJavaScript
over theDOM
and notjQuery
, for example:jsbin code to demonstrate:
http://jsbin.com/obutul/edit#javascript,html,live
html 元素上还有一个 outerHTML 属性,其中包括所选元素本身。
There is also an outerHTML property on html elements, which includes the selected element itself.
现在,outerHTML 已在几乎所有浏览器中实现(包括旧版本的 ie - firefox 是唯一一个拖拖拉拉的浏览器,但它是 计划用于 v11),因此我改编了 @James Hill 的答案,以在存在的情况下使用此本机功能,因为它应该更高效。
请注意,outerHTML 中存在一些跨浏览器不一致的情况(例如,查看此页面在chrome中并与ie进行比较)
outerHTML is implemented across nearly all browsers now (including old versions of ie - firefox is the only one dragging its feet, but it's scheduled for v11), so I've adapted @James Hill's answer to use this native functionality where present as it should be more efficient.
Be aware though that there are a few cross-browser inconsistencies in outerHTML (e.g look at this page in chrome and compare with ie)
您可以将所需的 div 包装在另一个 div 中,然后获取父 div 的 html。
现在,
$("#1").parent().html()
将获取所需的字符串。You can wrap the desired div in another div and then fetch the parent div's html.
Now,
$("#1").parent().html()
will fetch the desired string.