2010-06-06 52 views
5

我有一个文本区域。我可以将它与jquery prepend to textarea text()

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

文字,我可以预先考虑到文本区是这样的:

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

但我不能预先考虑到这样的jQuery的文本()对象:

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

我想这样做的原因是,如果我的用户得到我前面加上这样的文字:

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

...脚本执行,我输了。

帮助?

回答

9

您需要修改val()属性:

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

顺便说一句,让textarea的内容,正确的方法是调用val(),不text()