| 便便's profile可爱的便便PhotosBlogLists | Help |
|
|
2/24/2006 [原创] 设置Ctrl+Enter提交表单的一劳永逸方法转载请注明 刚刚IE和firefox下测试成功,嘿嘿。 常规做法是在textarea的标签里写onkeydown事件,如: <form name=form2> <textarea onkeydown='if(event.keyCode==13 && event.ctrlKey) return document.form2.submit()'> </textarea> </form> 或者把函数写到某个方法里,然后调用。 上面说的常规方法有几个很烦的地方: 1)必须指定form的name或者id,如果有多个form必须修改代码 2)代码比较长 3)每次都要敲那么长的代码(或者复制粘贴?还要打开以前写过的文件,找到, 选择……敲都敲完了) …… 试了一下,可以用下面的办法,一劳永逸得解决这个问题,只要将脚本 引用一下,页面不用做任何改动,甚至form的name也不用设 不管多少form,多少textarea,都能支持快捷键提交 1)写个脚本,比如common.js //自动textarea支持Ctrl+Enter提交, by Net@Lilybbs (yuelinniao@msn) window.onload = function() { for(var i=0; i < document.forms.length; i++) { var frm = document.forms[i]; for(var j=0; j < frm.length; j++) { var e = frm.elements[j]; if(!e.type) continue; if(e.type=="textarea") e.onkeydown = function(evt) { evt=(evt)?evt:((event)?event:null); if(evt.ctrlKey && evt.keyCode==13) { this.form.submit(); return false; } } } } } 2)然后在需要的页面上 <script src="common.js"></script> 这个页面的textarea就自动有了Ctrl+Enter提交表单功能 |
|
|