在开发过程中,jquery.html() 是获取当前节点下的html代码,并不包含当前节点本身的代码,然后我们有时候确需要,找遍jquery api文档也没有任何方法可以拿到。
看到有的人通过parent().html(),如果当前元素没有兄弟元素还行,如果有那就行不通了。后来实验发现有一个jquery的一个方法可以解决,而且非常简便,如下:
jquery.prop("outerhtml");
代码如下:
<p class="test"><p>hello,你好!</p></p>
<script>
$(".test").prop("outerhtml");
</script>
因为原生js dom里有一个内置属性 outerhtml (看清大小写哦,js是区分大小写的)用来获取当前节点的html代码(包含当前节点),所以用jquery的prop()能拿到,经过实验attr()方法是拿不到的,不信的话,大家也可以尝试尝试,谢谢。
当然也有人用jquery的 clone() 函数配合append() 来创建一个只有一个子元素的节点,然后来拿节点的html,这样也是可行的,但是代码繁琐。
如对本文有疑问, 点击进行留言回复!!
荐 AJAX初识Day1——POST & GET请求
海创软件组--20200712--axios上传文件获取进度--js对多个四边形的点对象数组分别按顺时针排序--定义上传视频并可预览
网友评论