1.在父标签内创建子标签,新创建的子标签放在父标签最下面

$(parent).append(son)、$(son).appendTo(parent)

<div class="d"> <h3>hello div</h3> </div>
<button onclick="myClick()">点我</button>
<script>
function myClick() {
//$('.d').append('<p>hello p</p>'); 直接一步创建子标签和子标签的内容
var $ele=$('<p>'); //等号左边为jQuery创建变量,右边为创建标签p,$('<p></p>')可简写为$('<p>')
$ele.html('hello p'); //给新创建的标签设置html内容
$('.d').append($ele); //使用append添加,父标签在前,子标签在后
//$ele.appendTo('.d') 使用appendTo添加,子标签在前,父标签在后
}
</script>

点击按钮会在div中的h3标签下面生成一个段落,段落内容为p标签内的文本

2.在父标签内创建子标签,新创建的子标签放在父标签最上面

$(parent).prepend(son)、$(son).prependTo(parent)

<div class="d"> <h3>hello div</h3> </div>
<button onclick="myClick()">点我</button>
<script>
function myClick() {
//$('.d').prepend('<p>hello p</p>');
var $ele=$('<p>');
$ele.html('hello p');
$('.d').prepend($ele);
//$ele.appendTo('.d')
}
</script>

点击按钮会在div中的h3标签上面生成一个段落,段落内容为p标签内的文本

3.创建兄弟标签,新创建的标签放在指定标签下面

$(brother).after(newbrother)、$(newbrother).insertAfter(brother)

<div class="d"> <h3>hello div</h3> </div>
<button onclick="myClick()">点我</button>
<script>
function myClick() {
//$('.d').after('<p>hello p</p>');
var $ele=$('<p>');
$ele.html('hello p');
$('.d').after($ele);
//$ele.insertAfter('.d')
}
</script>

4.创建兄弟标签,新创建的标签放在指定标签上面

$(brother).before(newbrother)、$(newbrother).insertBefore(brother)

<div class="d"> <h3>hello div</h3> </div>
<button onclick="myClick()">点我</button>
<script>
function myClick() {
//$('.d').before('<p>hello p</p>');
var $ele=$('<p>');
$ele.html('hello p');
$('.d').before($ele);
//$ele.insertBefore('.d')
}
</script>

5.用新创建标签替换原有标签

$(old).replaceWith(new)

<div class="d"> <h3>hello div</h3> </div>
<button onclick="myClick()">点我</button>
<script>
function myClick() {
var $ele=$('<p>');
$ele.html('hello p');
$('.d').replaceWith($ele);
}
</script>

6.删除和清空标签

$('.d').empty():清空选择标签的文本和下属标签,但是该标签本身还存在

$('.d').remove():直接删除本标签及所有文本和下属标签

<div class="d">
hello
<h3>hello div</h3>
</div>
<button onclick="myClick()">点我</button>
<script>
function myClick() {
var $ele=$('<p>');
$ele.html('hello p');
$('.d').empty();//清空div标签下的文本和和h3标签,但div标签还存在
//$('.d').remove();删除div标签及所有下属内容
}
</script>

7.复制标签

$('.d').clone()

<div>
<button onclick="add(this)">+</button>
<button onclick="del(this)">-</button>
&nbsp&nbsp&nbsp&nbsp<input type="text">
</div>
<script>
function add(self) {
var $ele=$(self).parent().clone();
$(self).parent().after($ele);
}
function del(self) {
$(self).parent().remove();
}

最开始只有一行,点击加号按钮则增加一行,点击减号按钮则删除一行。

在使用复制功能时,绑定的事件一定要通过this指定当前标签,因为随着克隆标签的进行,原本的标签数量会变多

<p>hello p</p>
<button onclick="add()">click me</button>
<script>
function add() {
var $ele=$('p').clone();
$('p').after($ele)
}

最开始,按钮点击一次、两次的效果,而点击三次则会出现42个段落。

而修改成如下代码,则每次点击按钮只会增加一行。

<p>hello p</p>
<button onclick="add(this)">click me</button>
<script>
function add(self) {
var $ele=$(self).prev().clone();
$(self).prev().after($ele)
}
</script>

jQuery创建、删除和修改html标签的更多相关文章

  1. 数据库的SQL基本用法 创建 删除 查询 修改

    1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname 3.说明:备份sql server--- 创建 备份数据的 ...

  2. jquery修改a标签的href链接和文字

    可以先体验一下效果:http://keleyi.com/keleyi/phtml/jquery/2.htm 以下修改a标签的href链接和修改文字的代码: <script type=" ...

  3. 用jQuery创建HTML中不存在的标签元素碰到的问题

    如果你自定义了一个标签,比如<aaa></aaa> 用jQuery的写法,比如var custom_element = $('<aaa class="ee&qu ...

  4. Mysql的基础使用之SQL原生语句的使用:表的 创建 删除 修改 (一)

    上一篇主要讲的是关于Mysql的分支MariaDB在Linux下的安装 顺利安装完成的小伙伴,就可以接着来试试SQL的魅力了 红色为命令 蓝色为自定义名 查看数据库 MariaDB [(none)]& ...

  5. jQuery 如何先创建、再修改、后添加DOM元素

    例如顺序执行[创建]-> [修改]-> [添加]三个动作. 由于jQuery支持链式操作,其实就是设计模式的builder模式,所以我们可以把三个操作串在一起来执行. 首先创建一个p元素, ...

  6. [Git]Git指南一 查看创建删除标签

    1. 查看标签 列出现有标签,使用如下命令: xiaosi@yoona:~/code/learningnotes$ git tag r-000000-000000-cm.cm v1.0.0 v1.0. ...

  7. hive 学习系列二(数据库的创建删除修改) 拿走,不谢。

    database 相当于一个目录或者命名空间,用来更好地进行表的管理 在hdfs 的目录位置大致如下: [root@iZbp12vtv76y9q3d633bh6Z /]# hadoop fs -ls ...

  8. C# 添加、修改、删除Excel图表数据标签

    图表中,图表数据标签以数据化形式表现图表中的特定数据,可增强图表的可读性.我们可以对图表添加数据标签,也可以对已有的数据标签进行修改或者删除,下面将通过C#代码形式来实现. 使用工具:Spire.XL ...

  9. javascript jquery 修改指定标签中的内容

    javascript jquery 修改指定标签中的内容 $("#test1").text("Hello world!"); document.getEleme ...

随机推荐

  1. zeppelin 一直报这个警告 也是醉了

    用./zeppelin-daemon.sh start 启动zeppelin 一直报这个警告.. WARN [2017-03-23 19:11:34,461] ({qtp483422889-45} N ...

  2. Microsoft office 2019 正式版镜像下载

    http://www.xitongtiandi.net/soft_yy/4373.htmlMicrosoft office 2019 正式版镜像下载 http://www.xitongtiandi.n ...

  3. 管理菜单 结贴回复 来自 202.112.36.253 的回复: TTL 传输中过期

    发表于 2010-08-26 18:29:14 楼主 其实标题是我执行如下命令时的输出:C:\Users\ChenWeiguang>ping 218.198.81.190 正在 Ping 218 ...

  4. nw.js---创建一个点击菜单

    使用nw.js创建一个可点击的菜单: <!doctype html> <html lang="en"> <head> <meta char ...

  5. vue里v-for下的key的作用

    将v-for的元素赋予唯一的key属性,则会打破‘就地复用原则’: 这个就地复用原则是指 如果数据项的顺序被改变,Vue 将不会移动 DOM 元素来匹配数据项的顺序, 而是简单复用此处每个元素,并且确 ...

  6. python 中字符串的格式化

    # 字符串格式化name = input("name:")age = int(input("age:"))job = input("job:" ...

  7. 从光盘安装ubuntu系统

    参考博客: https://www.jianshu.com/p/7929e4911206

  8. 阻塞队列(BlockingQueue)

    阻塞队列是 java.util.concurrent 包提供的一个类,该类提供了多线程中通过队列实现安全高效的数据处理的功能. 所谓阻塞队列,是在普通队列基础上实现了阻塞线程的功能: 队列为空时,获取 ...

  9. Yii2 mongoDb的配置及使用

    yii2 的配置都是在启动时加载的,所以mongo的配置也同样在component里面配置. 具体实现(无用户和密码): [ 'mongo1' => [ 'class' => '\yii\ ...

  10. [js]nodejs初探http/url/fs模块

    难怪我没学会, 因为我的套路有问题. 错误点, 1,大而全 2,不注重思路 学习要领: 1, 小而精 2, 重思路(总结) nodejs特点: 1.node提供了js的运行环境, 一般将node运行在 ...