jQuery中clone()函数实现表单中增加和减少输入项


Posted in jQuery onMay 13, 2017

之前一直没有深入了解到clone()函数的方法,所以对应表单中增加和减少输入项一直使用如:

var copy_html=$(选择器).html(); 
alert(copy_html);

问题在于得出的copy_html直接是HTML内容代码,未经过object封装,而使用:

var copy_html=$(选择器).clone(); 
alert(copy_html);

得出未object对象类型,若$(选择器)包含了某个触发,如 onclick,如果想copy_html继续沿用onclick方法,只需添加true:clone(true)使用。

直接上图:

jQuery中clone()函数实现表单中增加和减少输入项

点击“+”,拷贝自身,并在自身之前追加:

jQuery中clone()函数实现表单中增加和减少输入项

增加方法:

$(function(){
//增加省份、招生人数

$(".addbtn").click(function(){


var copy_str=$(this).parents(".form-group").clone();


copy_str.find("i").removeClass("fa-plus").addClass("fa-minus");

//将按钮图标“+”,变为“-”




copy_str.find("button").removeClass("addbtn");





 //去除class名“addbtn”,避免新增的输入项沿用此添加方法


copy_str.find("button").attr("onclick","canelf(this)");




//增加点击删除自身触发事件


$(this).parent().parent().parent().before(copy_str);




//追加

});
});
//增加项,删除方法
function canelf(e){

$(e).parent().parent().parent().remove();
}

最后贴上HTML代码:

<div class="form-group">
<label class="control-label col-md-2 col-sm-3 col-xs-3">省份</label>
<div class="col-md-10 col-sm-9 col-xs-9 ">
<div class="col-md-2 col-sm-3 col-xs-3 " style="padding-left:0;">
<select class="form-control input-sm">
<option>全部</option>
<option value="北京">北京市</option>
<option value="浙江省">浙江省</option>
<option value="天津市">天津市</option>
<option value="安徽省">安徽省</option>
<option value="上海市">上海市</option>
<option value="福建省">福建省</option>
<option value="重庆市">重庆市</option>
<option value="江西省">江西省</option>
<option value="山东省">山东省</option>
<option value="河南省">河南省</option>
<option value="湖北省">湖北省</option>
<option value="湖南省">湖南省</option>
<option value="广东省">广东省</option>
<option value="海南省">海南省</option>
<option value="山西省">山西省</option>
<option value="青海省">青海省</option>
<option value="江苏省">江苏省</option>
<option value="辽宁省">辽宁省</option>
<option value="吉林省">吉林省</option>
<option value="台湾省">台湾省</option>
<option value="河北省">河北省</option>
<option value="贵州省">贵州省</option>
<option value="四川省">四川省</option>
<option value="云南省">云南省</option>
<option value="陕西省">陕西省</option>
<option value="甘肃省">甘肃省</option>
<option value="黑龙江省">黑龙江省</option>
<option value="香港特别行政区">香港特别行政区</option>
<option value="澳门特别行政区">澳门特别行政区</option>
<option value="广西壮族自治区">广西壮族自治区</option>
<option value="宁夏回族自治区">宁夏回族自治区</option>
<option value="新疆维吾尔自治区">新疆维吾尔自治区</option>
<option value="内蒙古自治区">内蒙古自治区</option>
<option value="西藏自治区">西藏自治区</option>
</select>
</div>
<div class="col-md-2 col-sm-3 col-xs-3">
<div class='input-group input-group-sm'>
<input type="text" class="form-control" placeholder="计划招生人数" />
<span class="input-group-addon">人
</span>
</div>
</div>
<div class="col-md-1 col-sm-2 col-xs-2">
<button type="button" class="btn btn-primary btn-sm addbtn"><i class="fa fa-plus"></i></button>
</div>
</div>
</div>

以上所述是小编给大家介绍的jQuery中clone()函数实现表单中增加和减少输入项,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

jQuery 相关文章推荐
jQuery实现QQ空间汉字转拼音功能示例
Jul 10 jQuery
jqueryUI tab标签页代码分享
Oct 09 jQuery
jQuery中元素选择器(element)简单用法示例
May 14 jQuery
jQuery实现基本隐藏与显示效果的方法详解
Sep 05 jQuery
jQuery 同时获取多个标签的指定内容并储存为数组
Nov 20 jQuery
jQuery实现侧边栏隐藏与显示的方法详解
Dec 22 jQuery
jQuery实现判断滚动条滚动到document底部的方法分析
Aug 27 jQuery
JS秒杀倒计时功能完整实例【使用jQuery3.1.1】
Sep 03 jQuery
jquery将json转为数据字典的实例代码
Oct 11 jQuery
JS 遍历 json 和 JQuery 遍历json操作完整示例
Nov 11 jQuery
jquery实现垂直手风琴菜单
Mar 04 jQuery
jQuery实现可以计算进制转换的计算器
Oct 19 jQuery
jQuery遍历节点方法汇总(推荐)
May 13 #jQuery
jQuery手风琴的简单制作
May 12 #jQuery
jQuery.ajax向后台传递数组问题的解决方法
May 12 #jQuery
jQuery遮罩层实例讲解
May 11 #jQuery
jQuery zTree树插件动态加载实例代码
May 11 #jQuery
jQuery实现的简单在线计算器功能
May 11 #jQuery
jQuery+PHP+Mysql实现抽奖程序
Apr 12 #jQuery
You might like
如何在PHP中使用Oracle数据库(6)
2006/10/09 PHP
php目录遍历函数opendir用法实例
2014/11/20 PHP
学习php设计模式 php实现原型模式(prototype)
2015/12/07 PHP
Javascript 网页黑白效果实现代码(兼容IE/FF等)
2010/04/23 Javascript
理解JSON:3分钟课程
2011/10/28 Javascript
jquery+ajax实现跨域请求的方法
2015/01/20 Javascript
全面解析bootstrap格子布局
2016/05/22 Javascript
jquery ezUI 双击行记录弹窗查看明细的实现方法
2016/06/01 Javascript
angular 基于ng-messages的表单验证实例
2017/05/04 Javascript
Node做中转服务器转发接口
2017/10/18 Javascript
Angular 4.x+Ionic3踩坑之Ionic 3.x界面传值详解
2018/03/13 Javascript
对angular 监控数据模型变化的事件方法$watch详解
2018/10/09 Javascript
JS滚轮控制图片缩放大小和拖动的实例代码
2018/11/20 Javascript
压缩Vue.js打包后的体积方法总结(Vue.js打包后体积过大问题)
2020/02/03 Javascript
nodejs制作小爬虫功能示例
2020/02/24 NodeJs
基于javascript处理二进制图片流过程详解
2020/06/08 Javascript
浅谈vue.watch的触发条件是什么
2020/11/07 Javascript
H5 js点击按钮复制文本到粘贴板
2020/11/19 Javascript
Python新手在作用域方面经常容易碰到的问题
2015/04/03 Python
Python下线程之间的共享和释放示例
2015/05/04 Python
python通过cookie模拟已登录状态的初步研究
2016/11/09 Python
Python实现处理逆波兰表达式示例
2018/07/30 Python
使用Python的datetime库处理时间(RPA流程)
2019/11/24 Python
python3.8下载及安装步骤详解
2020/01/15 Python
借助Paramiko通过Python实现linux远程登陆及sftp的操作
2020/03/16 Python
python怎么判断素数
2020/07/01 Python
Python本地及虚拟解释器配置过程解析
2020/10/13 Python
CSS3打造百度贴吧的3D翻牌效果示例
2017/01/04 HTML / CSS
html5 canvas 实现光线沿不规则路径运动
2020/04/20 HTML / CSS
缅甸网上购物:Shop.com.mm
2017/12/05 全球购物
JavaScript实现页面动态验证码的实现示例
2021/03/23 Javascript
毕业生求职简历中的自我评价
2013/10/18 职场文书
医学生自我鉴定范文
2013/11/08 职场文书
2015年新农村建设工作总结
2015/05/22 职场文书
python 办公自动化——基于pyqt5和openpyxl统计符合要求的名单
2021/05/25 Python
python库Tsmoothie模块数据平滑化异常点抓取
2022/06/10 Python