Shift+Enter按钮用于提交表单


Shift+Enter button used for submitting form

我想使用shift+enter按钮提交表单,而不是简单地按enter按钮。Pl帮助我完成

如果您仍然想这样做,尽管这会带来可用性问题。。。

$('#form').keydown(function(e) {
    if( e.keyCode === 13 && e.shiftKey ) {  // When "Shift + Enter"
        $(this).trigger('submit'); 
    } else { e.preventDefault(); }
});

我建议使用CTRL+ENTER提交表单这样用户体验会更好

<script language=javascript>
ie = (document.all)? true:false
if (ie){
function ctlent(eventobject){if(event.ctrlKey && window.event.keyCode==13){this.document.form1.submit();}}
}
</script>
<form action="http://www.TOMMYHU.CN" method=POST name=form1>
<textarea cols=95 name=Content rows=12 wrap=virtual onkeydown=ctlent()>
</textarea>
<input type=Submit value="Submit" name=Submit>
</form>

你试过吗?

$(document).keydown(function(e) {
    if(e.keyCode==13 && e.keyCode==16){  // 13=enter  16=shift
       //submit here
       alert('submit now');
    }
    else{
       e.preventDefault();
    }
});

对翟晓虎思想的改进:

<form action="." method="POST">
  <textarea name="text"></textarea><br />
  <button>Submit</button>
</form>
<script>
  var textareas = document.getElementsByTagName("TEXTAREA");
  for (var i = 0; i < textareas.length; ++i) {
    textareas[i].addEventListener('keydown', function(ev) {
      if(ev.ctrlKey && ev.keyCode === 13){
        this.form.submit();
      }
    });
  }
</script>

这个…

  • 是纯Javascript
  • 将自己附加到所有文本区域,并提交正确的表单
  • 仅适用于现代浏览器,但可能会扩展到适用于更多浏览器