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 相关文章推荐
JS与jQuery实现子窗口获取父窗口元素值的方法
Apr 17 jQuery
jquery中封装函数传递当前元素的方法示例
May 05 jQuery
Jquery获取radio选中的值
May 05 jQuery
jQuery实现frame之间互通的方法
Jun 26 jQuery
jQuery实现键盘回车搜索功能
Jul 25 jQuery
jQuery EasyUI的TreeGrid查询功能实现方法
Aug 08 jQuery
jquery写出PC端轮播图实例
Jan 26 jQuery
jQuery实现基本淡入淡出效果的方法详解
Sep 05 jQuery
如何使用CSS3和JQuery easing 插件制作绚丽菜单
Jun 18 jQuery
jQuery zTree树插件的使用教程
Aug 16 jQuery
jQuery 实现DOM元素拖拽交换位置的实例代码
Jul 14 jQuery
jQuery实现鼠标拖动图片功能
Mar 04 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实现简单搜歌的方法
2015/07/28 PHP
[原创]PHP获取数组表示的路径方法分析【数组转字符串】
2017/09/01 PHP
推荐:极酷右键菜单
2006/11/29 Javascript
使用onbeforeunload属性后的副作用
2007/03/08 Javascript
Jquery 1.42 checkbox 全选和反选代码
2010/03/27 Javascript
jquery获得下拉框值的代码
2011/08/13 Javascript
javascript 文件的同步加载与异步加载实现原理
2012/12/13 Javascript
js日期、星座的级联显示代码
2014/01/23 Javascript
jquery插件star-rating.js实现星级评分特效
2015/04/15 Javascript
Atitit.js的键盘按键事件捆绑and事件调度
2016/04/01 Javascript
基于CSS3和jQuery实现跟随鼠标方位的Hover特效
2016/07/25 Javascript
对Js OOP编程 创建对象的一些全面理解
2016/07/26 Javascript
Bootstrap modal 多弹窗之叠加显示不出弹窗问题的解决方案
2017/02/23 Javascript
基于jstree使用AJAX请求获取数据形成树
2017/08/29 Javascript
详谈commonjs模块与es6模块的区别
2017/10/18 Javascript
vue-cli项目优化方法- 缩短首屏加载时间
2018/04/01 Javascript
JavaScript中变量提升与函数提升经典实例分析
2018/07/26 Javascript
原生js实现移动端Touch轮播图的方法步骤
2019/01/03 Javascript
微信小程序错误this.setData报错及解决过程
2019/09/18 Javascript
如何在vue项目中嵌入jsp页面的方法(2种)
2020/02/06 Javascript
Python yield 小结和实例
2014/04/25 Python
Python基于list的append和pop方法实现堆栈与队列功能示例
2017/07/24 Python
TensorFlow在MAC环境下的安装及环境搭建
2017/11/14 Python
分享6个隐藏的python功能
2017/12/07 Python
Python 运行 shell 获取输出结果的实例
2019/01/07 Python
Python字符串的一些操作方法总结
2019/06/10 Python
python多线程同步之文件读写控制
2021/02/25 Python
使用jupyter notebook直接打开.md格式的文件
2020/04/10 Python
Kate Spade美国官网:纽约新兴时尚品牌,以包包闻名于世
2017/11/09 全球购物
Wedgwood美国官网:英国骨瓷,精美礼品及家居装饰
2018/02/17 全球购物
义和团口号
2014/06/17 职场文书
后进基层党组织整改方案
2014/10/25 职场文书
五年级上册复习计划
2015/01/19 职场文书
2016抗战胜利71周年红领巾广播稿
2015/12/18 职场文书
CSS3 制作的书本翻页特效
2021/04/13 HTML / CSS
SpringDataJPA实体类关系映射配置方式
2021/12/06 Java/Android