我有contenteditable
div,我想按回车键,添加 new line
文字中的字符。
我这样做:
$("#editable").on("keydown", function(e) {
if (e.keyCode === 13) {
document.execCommand('insertHTML', false, '\n');
}
});
这有效,但这也增加了 <br>
标签到文本(在 chrome <div>
标签中)
我需要防止在回车时添加这个标签。
我知道两种方式:
1) 使用 preventDefault()
方法,但是使用这种方法,用户需要按回车键两次换行。这很糟糕。
2) 使用 replace()
从整个文本中删除此标签方法,但在这种情况下,所有这些标签(如果用户专门输入文本)都将被删除,所以这也是不好的方法。
如何解决这个问题?
最佳答案
试试这个:
$("#editable").on("keydown", function(e) {
return e.which != 13;
});
关于javascript - 防止在输入时在 contenteditable div 中添加换行符标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37614356/