• 需求再现
<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. Windows使用中的一些小技巧

    1.网站保存在桌面 在桌面新建一个快捷方式,然后输入网址即可.

  2. EXPORT_SYMBOL使用

    EXPORT_SYMBOL只出现在2.6内核中,在2.4内核默认的非static 函数和变量都会自动导入到kernel 空间的, 都不用EXPORT_SYMBOL() 做标记的.2.6就必须用EXPO ...

  3. json & pickle数据序列化

    序列化:把内存中的数据对象变成字符串 info = { 'name':'tom', 'age':22 } f = open("test.txt","w") f. ...

  4. Font: a C++ class

    Font: a C++ class        This class is used in Fractal Generator.    Avi Examples The header fileFon ...

  5. PHP闭包(Closure)初探(转载 http://my.oschina.net/melonol/blog/126694?p=2#comments)

    匿名函数 提到闭包就不得不想起匿名函数,也叫闭包函数(closures),貌似PHP闭包实现主要就是靠它.声明一个匿名函数是这样: ? 1 2 3 $func = function() {       ...

  6. mysql锁机制之乐观锁(二)

    select for update: 在执行这个 select 查询语句的时候,会将对应的索引访问条目进行上排他锁(X 锁),也就是说这个语句对应的锁就相当于update带来的效果. select * ...

  7. SpringCloud Config Server中{application}等占位符使用场景设置默认拉去分支

    Spring Cloud Config服务器支持一个Git仓库URL,其中包含{application}和{profile}(以及{label})的占位符. 1.各个占位符所代表的含义 applica ...

  8. Netty资料

    netty 资料  转自   http://calvin1978.blogcn.com/articles/netty-info.html Netty资料皆阵列在前 Posted on 2016-08- ...

  9. 微信公众平台Java版极速SDK

    JEEWX-API 是第一个微信公众平台Java版极速SDK,基于 jeewx-api 开发可以立即拥有简单易用的API,让开发更加轻松自如,节省更多时间 http://www.jeewx.com/

  10. centos上传下载文件

    1.在windows上安装SecureCRT 2.在centos上安装rzsz软件:yum install lrzsz 3.rz命令上传文件到centos 4.sz命令发送文件到windows