我试图让一些按钮将文本附加到带有jquery的textarea中,并且我有它工作,但前提是我没有在textarea中输入任何内容。
代码:
<textarea name="comments" id="comments" rows="20" style="margin-left: 0px; margin-right: 0px; width: 968px;"></textarea>
<div>
<button>+petname</button>
<button>+lastvisit</button>
<button>+nextvisit</button>
</div>
<script>
$( "button" ).click(function() {
var text = $( this ).text();
$('#comments').append(text);
});
</script>
此代码正常工作,但是当我在该文本区域输入其他内容时,按钮不再有效???为什么!!??我只是想不通。 非常感谢。 杰森
答案 0 :(得分:7)
不是使用函数参数语法append
设置val
,而是这样做:
$('#comments').val(function(_, val){
return val + text;
});
<强> Demo 强>
答案 1 :(得分:3)
更改
$('#comments').append(text);
到
$('#comments').val( $('#comments').val() + " " + text );