我想在用户按回车键时提交文本框的值,最后清除输入。我尝试了这段代码:
input.keydown(function(e) {
if (e.keyCode == 13) {
e.preventDefault();
$(this).val('');
...
}
输入字段的文本按预期清除,但清除后,换行符仍然输入到输入中。这意味着用户每次发送消息后都必须删除此换行符。除了设置间隔等黑客方法之外,还有其他方法可以防止出现换行符吗?
最佳答案
按下回车键时返回 false:
input.keydown(function(e) {
if (e.keyCode == 13) {
e.preventDefault();
$(this).val('');
return false;
}
}
当然,这意味着您的最终用户将无法实际创建新行。在这种情况下,我通常有一个 bool 变量,当按下/释放 Shift 键时该变量会发生变化。因此,如果 Shift 向下,则不要提交,而是换行。
关于javascript - 输入后清除 HTML 输入并防止换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16166752/