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 Ajax 异步操作之动态添加节点功能
May 24 jQuery
jquery仿京东商品放大浏览页面
Jun 06 jQuery
jQueryeasyui 中如何使用datetimebox 取两个日期间相隔的天数
Jun 13 jQuery
vue单页应用中如何使用jquery的方法示例
Jul 27 jQuery
jQuery实现腾讯信用界面(自制刻度尺)样式
Aug 15 jQuery
jquery tmpl模板(实例讲解)
Sep 02 jQuery
jQuery使用zTree插件实现可拖拽的树示例
Sep 23 jQuery
jquery ztree实现右键收藏功能
Nov 20 jQuery
JQuery实现table中tr上移下移的示例(超简单)
Jan 08 jQuery
jQuery实现鼠标响应式淘宝动画效果示例
Feb 13 jQuery
jQuery基于随机数解决中午吃什么去哪吃问题示例
Dec 29 jQuery
Jquery实现获取子元素的方法分析
Aug 24 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数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
PHP下的Oracle客户端扩展(OCI8)安装教程
2014/09/10 PHP
smarty内置函数foreach用法实例
2015/01/22 PHP
php使用MySQL保存session会话的方法
2015/06/18 PHP
PHP实现小程序批量通知推送
2018/11/27 PHP
基于jquery的获取mouse坐标插件的实现代码
2010/04/01 Javascript
Firebug入门指南(Firefox浏览器)
2010/08/21 Javascript
基于jquery库的tab新形式使用
2012/11/16 Javascript
Js实现当前点击a标签变色突出显示其他a标签回复原色
2013/11/27 Javascript
js通过元素class名字获取元素集合的具体实现
2014/01/06 Javascript
jQuery实现3D文字特效的方法
2015/03/10 Javascript
js实现微博发布小功能
2017/01/12 Javascript
深入浅出webpack之externals的使用
2017/12/04 Javascript
对mac下nodejs 更新到最新版本的最新方法(推荐)
2018/05/17 NodeJs
使用vue的transition完成滑动过渡的示例代码
2018/06/25 Javascript
node Buffer缓存区常见操作示例
2019/05/04 Javascript
js console.log打印对象时属性缺失的解决方法
2019/05/23 Javascript
layui-select动态选中值的例子
2019/09/23 Javascript
Js代码中的span拼接问题解决
2019/11/22 Javascript
vue项目启动出现cannot GET /服务错误的解决方法
2020/04/26 Javascript
JavaScript 异步时序问题
2020/11/20 Javascript
vuex Module将 store 分割成模块的操作
2020/12/07 Vue.js
[01:23:24]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第三场 2月7日
2021/03/11 DOTA
Python中List.count()方法的使用教程
2015/05/20 Python
Python程序员面试题 你必须提前准备!
2018/01/16 Python
Python 反转字符串(reverse)的方法小结
2018/02/20 Python
解决pyCharm中 module 调用失败的问题
2020/02/12 Python
Jupyter 无法下载文件夹如何实现曲线救国
2020/04/22 Python
filter使用python3代码进行迭代元素的实例详解
2020/12/03 Python
Pycharm 解决自动格式化冲突的设置操作
2021/01/15 Python
ziaja齐叶雅官方海外旗舰店:来自波兰的天然护肤品牌
2017/01/02 全球购物
丹麦优惠购物网站:PLUSSHOP
2019/03/24 全球购物
不服从公司安排检讨书
2014/09/24 职场文书
端午节寄语2015
2015/03/23 职场文书
python 实现的截屏工具
2021/05/08 Python
SpringCloud Feign请求头删除修改的操作代码
2022/03/20 Java/Android