jQuery复制表单元素附源码分享效果演示


Posted in Javascript onSeptember 30, 2015

我们在提交表单时,有时会遇到需要重复添加多个相同表单元素,如订单信息中需要添加多个不同型号的产品、表单数据中新增字段信息等。这个时候我们可以在表单中直接放置一个“新增一项”或“复制”按钮,通过点击按钮即可实现复制表单元素。

jQuery复制表单元素附源码分享效果演示

查看演示 下载源码

HTML

本文我们通过实例介绍一款简单的基于jQuery的元素复制插件,通过调用该插件轻松实现元素复制功能。

首先载入jQuery库文件和元素复制插件duplicateElement.min.js。

<script src="jquery.js"></script> 
<script src="duplicateElement.min.js"></script>

我们假设需要复制用户信息元素,表单html结构如下:

<form id="myform" name="myform" action="post.php" method="post"> 
  <fieldset id="additional"> 
    <label for="name">客户姓名:</label> 
    <input id="name" name="name[]" type="text" class="input" > 
    <label for="flag">客户级别:</label> 
    <select id="flag" name="flag[]"> 
      <option disabled="" selected="">请选择</option> 
      <option value="1">VIP</option> 
      <option value="2">普通</option> 
     </select> 
      <a href="javascript:void(0);" class="btn remove">移除</a> 
      <a href="javascript:void(0);" class="btn create">复制</a> 
    </fieldset> 
    <br/> 
    <div class="sub_btn"> 
      <input type="submit" class="button" value="提交"> 
    </div> 
</form>

jQuery

我们点击“复制”按钮时,将#additional里的内容进行复制,相当于新增一行,初始的时候只显示“复制”按钮,复制完后,原来的那条则显示“移除”按钮,点击“移除”则可将对应的行移除。

$(function () { 
    $('#additional').duplicateElement({ 
      "class_remove": ".remove", 
      "class_create": ".create", 
      onCreate: function (el) { 
        el.find("select").prop('defaultSelected'); 
        el.find(".input").val(''); 
      } 
    }); 
  });

我们还可以通过onCreate()回调函数来定义复制成功后,新增的表单元素的属性,如表单元素值或样式等。

以上内容就是给大家分享的jQuery复制表单元素附源码分享效果演示,希望对大家有所帮助。

Javascript 相关文章推荐
jquery使用append(content)方法注意事项分享
Jan 06 Javascript
轻量级的原生js日历插件calendar.js使用指南
Apr 28 Javascript
jquery中map函数遍历数组用法实例
May 18 Javascript
由浅入深剖析Angular表单验证
Jul 14 Javascript
jQuery实现点击查看大图并以弹框的形式居中
Aug 08 Javascript
AngularJS中下拉框的高级用法示例
Oct 11 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
Aug 16 Javascript
快速解决vue在ios端下点击响应延时的问题
Aug 27 Javascript
Bootstrap实现省市区三级联动(亲测可用)
Jul 26 Javascript
解决layui的table插件无法多层级获取json数据的问题
Sep 19 Javascript
JavaScript实现缓动动画
Nov 25 Javascript
浅谈JSON5解决了JSON的两大痛点
Dec 14 Javascript
js实现创建删除html元素小结
Sep 30 #Javascript
node.js下LDAP查询实例分享
Sep 30 #Javascript
Javascript中replace()小结
Sep 30 #Javascript
利用jQuery实现漂亮的圆形进度条倒计时插件
Sep 30 #Javascript
谈谈JavaScript异步函数发展历程
Sep 29 #Javascript
JavaScript 对象深入学习总结(经典)
Sep 29 #Javascript
深入浅析JavaScript中对事件的三种监听方式
Sep 29 #Javascript
You might like
以文本方式上传二进制文件的PHP程序
2006/10/09 PHP
php数组对百万数据进行排除重复数据的实现代码
2010/06/08 PHP
php实现判断访问来路是否为搜索引擎机器人的方法
2015/04/15 PHP
php版微信公众平台接口参数调试实现判断用户行为的方法
2016/09/23 PHP
PHP中的多种加密技术及代码示例解析
2016/10/20 PHP
基于jquery的滚动新闻列表
2010/06/19 Javascript
jQuery中add实现同时选择两个id对象
2010/10/22 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
Javascript的严格模式strict mode详细介绍
2014/06/06 Javascript
jquery text()方法取标签中的文本
2014/07/25 Javascript
javascript冒泡排序小结
2016/04/10 Javascript
用JavaScript动态建立或增加CSS样式表的实现方法
2016/05/20 Javascript
浅谈webpack SplitChunksPlugin实用指南
2018/09/17 Javascript
Vue侦测相关api的实现方法
2019/05/22 Javascript
vue+elementUI 复杂表单的验证、数据提交方案问题
2019/06/24 Javascript
vue搜索页开发实例代码详解(热门搜索,历史搜索,淘宝接口演示)
2020/04/11 Javascript
[02:51]DOTA2英雄基础教程 艾欧
2014/01/13 DOTA
[49:21]完美世界DOTA2联赛循环赛 Ink Ice vs LBZS BO2第二场 11.05
2020/11/06 DOTA
python实现通过shelve修改对象实例
2014/09/26 Python
一篇文章入门Python生态系统(Python新手入门指导)
2015/12/11 Python
Pandas探索之高性能函数eval和query解析
2017/10/28 Python
python assert的用处示例详解
2019/04/01 Python
python实现得到当前登录用户信息的方法
2019/06/21 Python
Python中关于浮点数的冷知识
2019/09/22 Python
python梯度下降算法的实现
2020/02/24 Python
在HTML5中如何使用CSS建立不可选的文字
2014/10/17 HTML / CSS
如何让pre和textarea等HTML元素去掉滚动条自动换行自适应文本内容高度
2019/08/01 HTML / CSS
网上书店创业计划书
2014/01/12 职场文书
消防安全汇报材料
2014/02/08 职场文书
报考公务员诚信承诺书
2014/08/29 职场文书
精神病医院见习报告
2014/11/03 职场文书
中学教师师德师风承诺书
2015/04/28 职场文书
交心谈心活动总结
2015/05/11 职场文书
python如何读取.mtx文件
2021/04/22 Python
MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函数的使用详解
2021/06/26 MySQL
Win11 25163.1010更新补丁KB5016904推送,测试服务验证管道(附更新修复汇总)
2022/07/23 数码科技