2010-06-06 15 views
5

Tengo un área de texto. Puedo establecer el texto de la misma conjquery prepend to textarea text()

$("#mytextarea").text("foo") 

puedo anteponer a la zona de texto como este:

$("#mytextarea").prepend("foo") 

Pero no puedo anteponer al objeto de texto jQuery() así:

$("#mytextarea").text().prepend("foo") 

La razón por la que quiero hacer esto es por lo que si mi usuario me llega a anteponer este texto:

$("#mytextarea").prepend("<script>alert('lol i haxed uuu!')</script>") 

... el script se ejecuta y pierdo.

¿Ayuda?

Respuesta

9

resulta necesario modificar el val() propiedad:

$('#mytextarea').val(function(index, old) { return '...' + old; }); 

Por cierto, el camino correcto para obtener el contenido del área de texto es llamar val(), no text():