javascript - 如何在 ENTER/RETURN keydown 上提交文本区域

标签 javascript

在输入框中,如果您按 RETURN/ENTER 键,您将提交表单。在文本区域中,按 RETURN 会产生换行符。你如何在 RETURN keydown 而不是产生换行符时提交表单并在 SHIFT + RETURN 中产生换行符? (就像 fb 和其他网站一样)

有什么方法可以只用 HTML 来实现吗?如果不是,用 JS 怎么办?

这就是我现在正在尝试的:

$('#conversationForm textarea').keydown(function(e) {
    e = e || event;
    if(e.keyCode == 13 && !e.shiftKey) {
        $("#conversationForm").submit();
        return false;
        }
    });

然而,当我无法阻止换行发生时。 (如果您按 RETURN,则在提交之前可以看到换行符。)

最佳答案

使用 jQuery,与其他答案类似,但包括您要求不提交而只是换行的请求

$("#mytextarea").keypress(function() {
  if(event.which == 13 && !event.shiftKey)
  {
      //submit your form here  i.e. form.submit();
  }
});​

这里如果按下 shift,它不会提交,只会换行。

关于javascript - 如何在 ENTER/RETURN keydown 上提交文本区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13435917/

相关文章:

javascript - AngularJS 单元测试 - 多个模拟和提供者

javascript - jQuery:具有相同名称的项目/类

javascript - THREE.js 使用 sceneLoader 加载由 THREE.js 编辑器创建的场景时出现异常

javascript - __proto__ 与 constructor.prototype 有何不同?

javascript - ExtJS 4.2.1 - 将文本字段添加到 XTemplate

javascript - 如何使用 jquery/javascript 将数组对象的值设置为在下拉列表(多选)中选择

javascript - 快速路由——路由到/secrets时出现404错误,我错过了什么

javascript - 如何使用 JavaScript 向我的文件系统发出 AJAX 请求?

javascript - 如何将图像拖放到所需位置?

javascript - 使用向下箭头键聚焦下一个输入(与 Tab 键一样)