如何在textarea内的值上附加一个标签,它只会在按下SHIFT + ENTER键后附加它,
这是我的代码要附加到文本区域,它不起作用??
$('#textarea').append("<br/>");
我认为还有一些不足之处。
谢谢。 。
答案 0 :(得分:7)
你真的想把字符放在值中吗?
$("textarea").val(function(i,v){
return v + "<br/>";
});
或者只是添加一个新行?
$("textarea").val(function(i,v){
return v + "\nfoo";
});
小提琴:http://jsfiddle.net/jonathansampson/SNeyy/
如果您只想回复 shift + ,请输入:
$("textarea").on("keypress", function(e){
if ( e.which === 13 && e.shiftKey ) {
$(this).val(function(i,v){
return v + "<br/>"; // or return v + "\n"; (whatever you want)
});
}
});
答案 1 :(得分:4)
您正在尝试更改textarea
的值。要添加字符串“&lt; br /&gt;”你必须使用
$('#textarea').val($('#textarea').val() + '<br/>');
并添加您必须使用的新行
$('#textarea').val($('#textarea').val() + "\n");
Textarea只能将一个文本节点作为其子节点。 <textarea><br/></textarea>
使用不正确。如果要添加字符串“&lt; br /&gt;”,则html代码应为
<textarea><br/></textarea>
并添加新行,html代码应为
<textarea>
</textarea>
换句话说,您无法使用<textarea><br/></textarea>