views:

119

answers:

1

I have a text area. I can set the text of it with

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

I can prepend to the text area like this:

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

But I cannot prepend to the jquery text() object like this:

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

The reason I want to do this is so that if my user gets me to prepend this text:

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

...the script executes and I lose.

Help?

+3  A: 

You need to modify the val() property:

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

By the way, the correct way to get the contents of the textarea is to call val(), not text():

SLaks