Maison >interface Web >js tutoriel >Corrections de bugs pour la méthode de clonage de jquery appliquée à textarea et select_jquery

Corrections de bugs pour la méthode de clonage de jquery appliquée à textarea et select_jquery

WBOY
WBOYoriginal
2016-05-16 16:43:051296parcourir

Le test a révélé qu'il y a un problème avec la méthode de clonage jquery de textarea et select. Les valeurs​​de textarea et select seront perdues lors du clonage. Il s'avère qu'il s'agit d'un bug de jquery. Je ne peux pas l'obtenir, vous pouvez jeter un œil au code. C'est relativement simple. Réaffectez simplement la valeur de val lors du clonage. Si vous le savez, il sera facile de l'écrire vous-même.

Importez-le simplement dans la page de clonage que vous souhaitez utiliser

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);
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn