首页 > 代码库 > 表单使用clone方法后, 原有select无法生效
表单使用clone方法后, 原有select无法生效
textarea和select的值clone的时候会丢掉,在clone的时候将val再重新赋值一下,如果知道这个了就加单了
测试发现,textarea和select的jquery的clone方法有问题,textarea和select的值clone的时候会丢掉,发现这个是jquery的一个bug,上不了的可以看下代码,比较简单。就是在clone的时候将val再重新赋值一下,如果知道这个了,就简单了自己写。
引入到你要用的clone的页面就ok
jquery.fix.clone.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
( 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); |
表单使用clone方法后, 原有select无法生效
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。