我有这段代码:
$("#texto").keyup(function(e){
if(e.key === "Enter"){
var texto = $("#texto").val();
$("#texto").val(texto+"<br/><br/>");
}
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea type="text" id="texto" name="texto" rows="8" style="resize:none;" ></textarea>
&#13;
但问题是,它写出<br/>
就像我想要的那样,但是在写入之前他就改变了行,我想知道它是否可以做相反的事情,在{之后改变行' {1}}已写完。
答案 0 :(得分:1)
你应该使用在实际插入角色之前发生的keydown
事件,这样你的<br>
将被放置在真正的输入字符之前。
$("#texto").keydown(function(e){
if(e.key === "Enter"){
var texto = $("#texto").val();
$("#texto").val(texto+"<br/><br/>");
}
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea type="text" id="texto" name="texto" rows="8" style="resize:none;" ></textarea>
&#13;