jquery的clone方法应用于textarea和select的bug修复


Posted in Javascript onJune 26, 2014

测试发现,textarea和select的jquery的clone方法有问题,textarea和select的值clone的时候会丢掉,发现这个是jquery的一个bug,上不了的可以看下代码,比较简单。就是在clone的时候将val再重新赋值一下,如果知道这个了,就简单了自己写。

引入到你要用的clone的页面就ok

jquery.fix.clone.js

(function (original) {
jQuery.fn.clone = function () {
var result = original.apply(this, arguments),
my_textareas = this.find('textarea').add(this.filter('textarea')),
result_textareas = result.find('textarea').add(result.filter('textarea')),
my_selects = this.find('select').add(this.filter('select')),
result_selects = result.find('select').add(result.filter('select'));

for (var i = 0, l = my_textareas.length; i < l; ++i) $(result_textareas[i]).val($(my_textareas[i]).val());
for (var i = 0, l = my_selects.length; i < l; ++i) result_selects[i].selectedIndex = my_selects[i].selectedIndex;

return result;
};
}) (jQuery.fn.clone);
Javascript 相关文章推荐
jQuery 性能优化指南(2)
May 21 Javascript
javascript提取URL的搜索字符串中的参数(自定义函数实现)
Jan 22 Javascript
js实现杯子倒水问题自动求解程序
Mar 25 Javascript
JS实现鼠标框选效果完整实例
Jun 20 Javascript
卸载安装Node.js与npm过程详解
Aug 15 Javascript
jQuery常用样式操作实例分析(获取、设置、追加、删除、判断等)
Sep 08 Javascript
AngularJS中ng-class用法实例分析
Jul 06 Javascript
JS实现的计数排序与基数排序算法示例
Dec 04 Javascript
详解ES6 Fetch API HTTP请求实用指南
Nov 14 Javascript
layui监听下拉选框选中值变化的方法(包含监听普通下拉选框)
Sep 24 Javascript
Element图表初始大小及窗口自适应实现
Jul 10 Javascript
vue3.0 自适应不同分辨率电脑的操作
Feb 06 Vue.js
document.forms用法示例介绍
Jun 26 #Javascript
JS获取当前日期时间并定时刷新示例
Mar 04 #Javascript
使用ajaxfileupload.js实现ajax上传文件php版
Jun 26 #Javascript
一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
Jun 26 #Javascript
php读取sqlite数据库入门实例代码
Jun 25 #Javascript
javascript基于HTML5 canvas制作画箭头组件
Jun 25 #Javascript
node.js学习总结之调式代码的方法
Jun 25 #Javascript
You might like
php构造函数与析构函数
2016/04/23 PHP
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
2007/07/11 Javascript
图标线性回归斜着移动到指定的位置
2013/08/16 Javascript
通过js简单实现将一个文本内容转译成加密文本
2013/10/22 Javascript
在easyUI开发中,出现jquery.easyui.min.js函数库问题的解决办法
2015/09/11 Javascript
angularjs学习笔记之简单介绍
2015/09/26 Javascript
详解 javascript中offsetleft属性的用法
2015/11/11 Javascript
Angular.js中ng-if、ng-show和ng-hide的区别介绍
2017/01/20 Javascript
vue axios同步请求解决方案
2017/09/29 Javascript
Nodejs 和 Electron ubuntu下快速安装过程
2018/05/04 NodeJs
react-router 路由切换动画的实现示例
2018/12/03 Javascript
微信小程序如何修改本地缓存key中单个数据的详解
2019/04/26 Javascript
基于Bootstrap和JQuery实现动态打开和关闭tab页的实例代码
2019/06/10 jQuery
layui+jquery支持IE8的表格分页方法
2019/09/28 jQuery
js判断在哪个浏览器打开项目的方法
2020/01/21 Javascript
Vue.js使用axios动态获取response里的data数据操作
2020/09/08 Javascript
[49:08]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第一场 11.27
2020/12/01 DOTA
Python定时执行之Timer用法示例
2015/05/27 Python
Python探索之URL Dispatcher实例详解
2017/10/28 Python
PyQt5每天必学之滑块控件QSlider
2018/04/20 Python
python 请求服务器的实现代码(http请求和https请求)
2018/05/25 Python
Pandas统计重复的列里面的值方法
2019/01/30 Python
在Python 中同一个类两个函数间变量的调用方法
2019/01/31 Python
简单了解python代码优化小技巧
2019/07/08 Python
解决pycharm最左侧Tool Buttons显示不全的问题
2019/12/17 Python
在Pycharm中安装Pandas库方法(简单易懂)
2021/02/20 Python
详解CSS3的perspective属性设置3D变换距离的方法
2016/05/23 HTML / CSS
Lime Crime官网:美国一家主打梦幻精灵系的彩妆品牌
2019/03/22 全球购物
试用期解除劳动合同通知书
2015/04/16 职场文书
离婚撤诉申请书范本
2015/05/18 职场文书
《从现在开始》教学反思
2016/02/16 职场文书
MySQL 可扩展设计的基本原则
2021/05/14 MySQL
vue+springboot实现登录验证码
2021/05/27 Vue.js
Nginx源码编译安装过程记录
2021/11/17 Servers
Java 垃圾回收超详细讲解记忆集和卡表
2022/04/08 Java/Android
Ruby序列化和持久化存储 Marshal和Pstore介绍
2022/04/18 Ruby