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 相关文章推荐
php基于redis处理session的方法
Mar 14 Javascript
浅谈Javascript中的12种DOM节点类型
Aug 19 Javascript
详解AngularJS如何实现跨域请求
Aug 22 Javascript
微信小程序多张图片上传功能
Jun 07 Javascript
基于jQuery选择器之表单对象属性筛选选择器的实例
Sep 19 jQuery
js的函数的按值传递参数(实例讲解)
Nov 16 Javascript
解决vue 按钮多次点击重复提交数据问题
May 10 Javascript
详解javascript replace高级用法
Feb 17 Javascript
JS实现秒杀倒计时特效
Jan 02 Javascript
云服务器部署Node.js项目的方法步骤(小白系列)
Mar 23 Javascript
nuxt.js服务端渲染中axios和proxy代理的配置操作
Nov 06 Javascript
JS中多层次排序算法的实现代码
Jan 06 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 5.3.x 的strtotime() 时区设定 警告信息修复
2013/08/05 PHP
php实现的任意进制互转类分享
2015/07/07 PHP
thinkPHP中session()方法用法详解
2016/12/08 PHP
微信公众号开发之通过接口删除菜单
2017/02/20 PHP
PHP两个n位的二进制整数相加问题的解决
2018/08/26 PHP
用javascript实现改变TEXTAREA滚动条和按钮的颜色,以及怎样让滚动条变得扁平
2007/04/20 Javascript
关于jQuery object and DOM element
2013/04/15 Javascript
JavaScript继承基础讲解(原型链、借用构造函数、混合模式、原型式继承、寄生式继承、寄生组合式继承)
2014/08/16 Javascript
基于jquery实现省市联动特效
2015/12/17 Javascript
Bootstrap开发实战之第一次接触Bootstrap
2016/06/02 Javascript
浅谈js中startsWith 函数不能在任何浏览器兼容的问题
2017/03/01 Javascript
vue2.0.js的多级联动选择器实现方法
2018/02/09 Javascript
基于angular6.0实现的一个组件懒加载功能示例
2018/04/12 Javascript
layui checkbox默认选中,获取选中值,清空所有选中项的例子
2019/09/02 Javascript
JS数据类型(基本数据类型、引用数据类型)及堆和栈的区别分析
2020/03/04 Javascript
js实现表格单列按字母排序
2020/08/12 Javascript
python 字符串格式化代码
2013/03/17 Python
详尽讲述用Python的Django框架测试驱动开发的教程
2015/04/22 Python
自动化Nginx服务器的反向代理的配置方法
2015/06/28 Python
高质量Python代码编写的5个优化技巧
2017/11/16 Python
python的socket编程入门
2018/01/29 Python
python如何把嵌套列表转变成普通列表
2018/03/20 Python
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
2018/04/30 Python
python中pip的安装与使用教程
2018/08/10 Python
python利用百度AI实现文字识别功能
2018/11/27 Python
Tensorflow分批量读取数据教程
2020/02/07 Python
Chain Reaction Cycles俄罗斯:世界上最大的在线自行车商店
2019/08/27 全球购物
Timberland澳大利亚官网:全球领先的户外品牌
2019/12/10 全球购物
大专生自荐信
2013/10/04 职场文书
外贸业务员的岗位职责
2013/11/23 职场文书
交通安全月活动总结
2015/05/08 职场文书
2015年语文教研组工作总结
2015/05/23 职场文书
劳动仲裁代理词范文
2015/05/25 职场文书
2016年大学生就业指导课心得体会
2015/10/09 职场文书
MyBatis自定义SQL拦截器示例详解
2021/10/24 Java/Android
Android开发 使用文件储存的方式保存QQ密码
2022/04/24 Java/Android