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插件扩展识别浏览器内核与外壳的类型和版本的实现代码
Oct 22 Javascript
如何用js 实现依赖注入的思想,后端框架思想搬到前端来
Aug 03 Javascript
深入理解js generator数据类型
Aug 16 Javascript
Jquery Easyui自定义下拉框组件使用详解(21)
Dec 31 Javascript
javascript实现二叉树遍历的代码
Jun 08 Javascript
JS判断数组那点事
Oct 10 Javascript
ES6之模版字符串的具体使用
May 17 Javascript
node.js中TCP Socket多进程间的消息推送示例详解
Jul 10 Javascript
JS基于ES6新特性async await进行异步处理操作示例
Feb 02 Javascript
JavaScript 作用域实例分析
Oct 02 Javascript
Vue axios 将传递的json数据转为form data的例子
Oct 29 Javascript
低门槛开发iOS、Android、小程序应用的前端框架详解
Oct 16 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中uploaded_files函数使用方法详解
2011/03/09 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
php的crc32函数使用时需要注意的问题(不然就是坑)
2015/04/21 PHP
PHP全局变量与超级全局变量区别分析
2016/04/01 PHP
ThinkPHP自定义Redis处理SESSION的实现方法
2016/05/16 PHP
javascript函数作用域学习示例(js作用域)
2014/01/13 Javascript
jquery 插件实现多行文本框[textarea]自动高度
2015/03/04 Javascript
js判断当前页面用什么浏览器打开的方法
2016/01/06 Javascript
jQuery文字横向滚动效果的实现代码
2016/05/31 Javascript
JS使用eval()动态创建变量的方法
2016/06/03 Javascript
javascript基于原型链的继承及call和apply函数用法分析
2016/12/15 Javascript
JS实现动态添加DOM节点和事件的方法示例
2017/04/28 Javascript
纯js实现隔行变色效果
2017/11/29 Javascript
微信小程序wx.uploadfile 本地文件转base64的实现代码
2018/06/28 Javascript
vue-quill-editor+plupload富文本编辑器实例详解
2018/10/19 Javascript
Javascript读取上传文件内容/类型/字节数
2019/04/30 Javascript
NodeJs生成sitemap站点地图的方法示例
2019/06/11 NodeJs
详解ECMAScript2019/ES10新属性
2019/12/06 Javascript
python实现指定字符串补全空格的方法
2015/04/30 Python
matplotlib实现热成像图colorbar和极坐标图的方法
2018/12/13 Python
深入了解Python在HDA中的应用
2019/09/05 Python
详解如何在css3打包后自动追加前缀插件:autoprefixer
2018/12/18 HTML / CSS
naturalizer加拿大官网:美国娜然女鞋
2017/04/04 全球购物
英国最大的女士服装零售商:Bonmarché
2017/08/17 全球购物
介绍一下#error预处理
2015/09/25 面试题
安全标准化实施方案
2014/02/20 职场文书
婚前保证书
2014/04/29 职场文书
医学专业毕业生求职信
2014/06/20 职场文书
语文教育专业求职信
2014/06/28 职场文书
文明好少年事迹材料
2014/08/19 职场文书
机关干部作风建设剖析材料
2014/10/23 职场文书
士兵突击观后感
2015/06/16 职场文书
八年级作文之友情
2019/11/25 职场文书
Nginx反向代理至go-fastdfs案例讲解
2021/08/02 Servers
简单聊聊Vue中的计算属性和属性侦听
2021/10/05 Vue.js
Go语言基础函数基本用法及示例详解
2021/11/17 Golang