Question

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?

Was it helpful?

Solution

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():

OTHER TIPS

Please check the following URL for jQuery .val() API documentation for more details-

http://api.jquery.com/val/

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top