我有一个文本区域,单击Enter时不会插入换行符, 我尝试使用以下代码,但是,当我按Enter键时,它将转到文本末尾并添加新行。
$("#descre").on('keydown', function(e) {
var code = e.keyCode || e.which;
if (code == 13) { //Enter keycode
event.preventDefault();
var s = $(this).val();
$(this).val(s + "\n");
}
});
我想按常规Enter键,例如jsfiddle
答案 0 :(得分:1)
您已在函数中将e作为参数传递,但是在if块中,您正在做event.preventDefault()
,将其更改为e.preventDefault()
//i try this one
$("#descre").on('keydown', function(e) {
var code = e.keyCode || e.which;
if(code == 13) { //Enter keycode
e.preventDefault();
var s = $(this).val();
$(this).val(s);
}
});
您最后要自己增加一行。那就是为什么它要插入额外的k = line
答案 1 :(得分:1)
我的textarea运行不正常,因此我使用代码接受正常行为的回车键:
$('#descre').keypress(function(e) {
if (e.keyCode == 13) {
e.preventDefault();
this.value = this.value.substring(0, this.selectionStart) + "" + "\n" + this.value.substring(this.selectionEnd, this.value.length);
}
});