2010-12-06 24 views
6

¿Puedo clonar un cuadro de texto sin su contenido? Significa si ingreso algunos valores en el cuadro de texto después de la clonación Quiero un cuadro de texto vacío.¿Es posible? O jquery clone lo devuelve como un innerHtml ?Jquery clon de un cuadro de texto sin el contenido

+0

Por cuadro de texto ¿te refieres a textarea? – benhowdle89

+0

Sin texto del tipo de entrada –

Respuesta

16

Por defecto, la clonación de copias el valor con el <input> tiene actualmente, pero puede apenas claro él cuando se clona, ​​por ejemplo:

var clone = $(".myInput").clone(true).val(""); 

Basado de su comentario, que había necesidad de algo como esto cuando se clona la fila:

var newRow = $(this).closest('tr').clone(true).appendTo('table') 
            .find('input').val(''); 
+0

Por curiosidad, ¿qué agrega 'true', cuando se usa con' clone() '? –

+0

@David - copia los manejadores de eventos/datos que el elemento puede tener ... así que por ejemplo si hay un manejador 'keyup', etc ... sin' true' nada de eso se copiará. –

+0

@ David, gracias a que funciona perfectamente bien –

2

acaba de establecer el valor del cuadro de texto clonado a una cadena vacía, así:

HT ML:

<input id="source" type="textbox" value="Some text..." /> 
<div id="target"></div> 

JavaScript:

$(function() { 
    $("#source").clone().val("").appendTo("#target"); 
}); 

Ejemplo:http://jsfiddle.net/X5x4L/

Editar: Funciona con aswell área de texto, consulte: http://jsfiddle.net/X5x4L/1/

+0

var newRow = $ (this) .closest ('tr') .clone (true) \t \t \t \t .val ("") .appendTo ('mesa'); –

+0

No funciona ..... –

+0

@OddOneOut: ¿Ok? ¿Es ese tu código? ¿No está funcionando? Simplemente no suelte ningún código ... –

0

En mi c ASE, que tenía una gran cantidad de campos del formulario, por lo que hacen todos ellos nula después de clonaje:

$('.user-address:first').clone().appendTo('.user-addresses'); 
$('.user-address:last').find('[name]').val(null); 

agujero ayuda a alguien.

Cuestiones relacionadas