我想使用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
- 将自己附加到所有文本区域,并提交正确的表单
- 仅适用于现代浏览器,但可能会扩展到适用于更多浏览器