• 需求再现
<div id="div1">
<p>这是一段测试文本001</p>
</div> <div id="div2">
<p>这是一段测试文本002</p>
<div id="div2_0">
<p>这是一段测试文本003</p>
</div>
</div>

  如上,我要将id为div2_0这个div包括里面的p标签移动到div1里面,移动后的html代码如下:

    <div id="div1">
<p>这是一段测试文本001</p>
<div id="div2_0">
<p>这是一段测试文本003</p>
</div>
</div> <div id="div2">
<p>这是一段测试文本002</p> </div>

  可能很容易想到用jQuery.html()这个方法实现,当然是不行的,因为jQuery.html() 是获取当前节点下的html代码,并不包含当前节点本身的代码,比如:$("#div2_0").html();获取到的是:<p>这是一段测试文本003</p>

  • 问题解决

  可以通过jQuery.prop("outerHTML");方法解决,这样获取到的html代码就包含当前节点本身了。js代码如下:

    <script src="jquery/jquery-3.3.1.js"></script>
<script>
function moveHtml() {
var outHtml = $("#div2>#div2_0").prop("outerHTML"); //获取到Html,包括当前节点
$("#div1").append(outHtml); //追加到div1内部
$("#div2>#div2_0").remove(); //删除原来的html
}
</script>
  • 完整代码

  贴上我测试的完整代码,需要导入jquery,点击下载

<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>jquery获取html(包含当前节点的)</title>
<style>
#div1 {
height: 200px;
width: 200px;
background-color: red;
} #div2 {
height: 100px;
width: 200px;
background-color: blue;
} #div2_0 {
height: 50px;
width: 150px;
background-color: green;
}
</style> </head> <body>
<div id="div1">
<p>这是一段测试文本001</p>
</div> <div id="div2">
<p>这是一段测试文本002</p>
<div id="div2_0">
<p>这是一段测试文本003</p>
</div>
</div>
<br>
<br>
<input type="button" value="移动html" onclick="moveHtml();" /> <script src="jquery/jquery-3.3.1.js"></script>
<script>
function moveHtml() {
var outHtml = $("#div2>#div2_0").prop("outerHTML"); //获取到Html,包括当前节点
$("#div1").append(outHtml); //追加到div1内部
$("#div2>#div2_0").remove(); //删除原来的html
}
</script>
</body> </html>

Jquery移动html到另一个标签下的更多相关文章

  1. xpath获取一个标签下的多个同级标签

    一.问题: 我在使用xpath获取文章内容的时候会遇到,多个相同的标签在同一级下面,但是我们只需要获取一部分的内容.比如我不想需要原标题这些内容. 二.解决: Xpath中有一个position()的 ...

  2. jquery如何实现点击LI标签和下面的LI互换顺序? 超简单代码

    转: jquery如何实现点击LI标签和下面的LI互换顺序? 上面的效果涉及jquery的两个方法: next()  :  获得匹配元素集合中每个元素紧邻的下一个同胞元素. after() :在被选元 ...

  3. jquery判断一个标签是否包含另外一个标签

    jquery判断一个标签是否包含另外一个标签 一.总结 一句话总结: jquery的find方法配合length属性:if($("#video_md_9_1").find(&quo ...

  4. jQuery获取元素上一个、下一个、父元素、子元素

    jQuery.parent(expr),找父亲节点,可以传入expr进行过滤,比如$("span").parent()或者$("span").parent(&q ...

  5. 表单验证——jquery validate使用说明【另一个教程】

    [参考:http://www.tuicool.com/articles/y6fyme] jQuery Validate jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证 ...

  6. 使用JS或jQuery模拟鼠标点击a标签事件代码

    原文 使用JS或jQuery模拟鼠标点击a标签事件代码 这篇文章主要介绍了使用JS或jQuery模拟鼠标点击a标签事件代码,需要的朋友可以参考下 <a id="alink" ...

  7. Jquery操作表格多出一个内容行

    目录 前言 需求 如何监听每一行点击,获取点击id 前后端 问题更新,ajax异步带来的问题 废弃使用HTML拼接 前言 我的前端实在是太差劲了,导致Jquery操作表格多出一个内容行,这个功能我都做 ...

  8. 一个标签的72变,打造一个纯CSS图标库

    每次要用到图标的时候都会到 icono 去copypaste,但每次用到的时候尺寸都各不一样,总是要调整参数,巨烦.当然你可以会想到用zoom.scale来做缩放,但是这样的缩放会使得线宽也变粗了,不 ...

  9. xss其他标签下的js用法总结大全

    前段时间我遇到一个问题,就是说普通的平台获取cookie的语句为↓           Default <script src=js地址></script> 1 <scr ...

随机推荐

  1. CF #301 E:Infinite Inversions(逆序数,树状数组)

    A-Combination Lock  B-School Marks   C-Ice Cave   D-Bad Luck Island   E-Infinite Inversions E:Infini ...

  2. 15.Update Documents-官方文档摘录

    1.插入数据 db.inventory.insertMany( [ { item: "canvas", qty: 100, size: { h: 28, w: 35.5, uom: ...

  3. (4.20)SQL Server数据库启动过程,以及启动不起来的各种问题的分析及解决技巧

    转自:指尖流淌 https://www.cnblogs.com/zhijianliutang/p/4085546.html SQL Server数据库启动过程,以及启动不起来的各种问题的分析及解决技巧 ...

  4. decorators.xml的用法

    spring,hibernate框架做的,对了,还有jQuery.我用jquery做异步请求到后台,生成json数据返回前台生成下拉输入框,请求到后台以后,成功生成了json数据并根据struts的映 ...

  5. Wilcoxon符号秩+秩和检验学习[转载]

    参数检验就是已知数据的精确分布模型,根据数据来求出模型中的未知参数:而非参数检验就是无需对样本总体分布(比如满足正态分布)做出假设. 1.符号检验 转自:https://baike.baidu.com ...

  6. mysql在线手册汇总

    1. MySQL官网 http://www.mysql.com/ • Reference Manual ▶ MySQL 5.0 Reference Manual:http://dev.mysql.co ...

  7. ORM中的related_name

    ORM 的反向查找(related_name) 先定义两个模型,一个是A,一个是B,是一对多的类型. class A(models.Model): name= models.CharField('名称 ...

  8. SQL各种连接——自连接、内连接、外连接、交叉连接的使用

    首先准备了两个表 (Student 和 Course),其中 Student 表中的 C_S_Id 字段为外键列,关联的是 Course 表的 C_Id 主键列. 内连接(inner join):满足 ...

  9. XVII Open Cup named after E.V. Pankratiev Stage 14, Grand Prix of Tatarstan, Sunday, April 2, 2017 Problem A. Arithmetic Derivative

    题目:Problem A. Arithmetic DerivativeInput file: standard inputOutput file: standard inputTime limit: ...

  10. GitHub上最热门的11款开源安全工具

    恶意软件分析.渗透测试.计算机取证——GitHub托管着一系列引人注目的安全工具.足以应对各类规模下计算环境的实际需求.  作为开源开发领域的基石,“所有漏洞皆属浅表”已经成为一条着名的原则甚至是信条 ...