|
回车键的处理问题
在Intranet实际应用中,如果涉及到用户间的交互,必然需要用到form 。而form 包含的域之间的焦点跳动,是通过tab 键来实现。而中国用户通常还习惯于用回车键。在浏览器中,如果使用回车,则执行了form 的submit事件,往往会造成误操作,因此在form的操作上,我们需要对回车进行处理。利用IE4能对键盘进行响应的特点,我们可以通过编制一个函数,响应按键事件,实现焦点的跳转。实例如下: 这里要注意的一点是,必须将提交按钮的属性设为“button”,而不是“submit”。 <html> <script> function keyEnter(iKeyCode) { var srcElement=window.event.srcElement;
if(srcElement.name=="save" || iKeyCode==-1) { document.forms[0].submit(); return true; } if(iKeyCode!=13) return false;
if (srcElement.tagName=="INPUT"||srcElement.tagName==”SELECT”) { var i = 0 while (srcElement!=srcElement.form.elements[i]) i++ srcElement.form.elements[i+1].focus(); }
return false; } </script> <body> <form method=”post” onkeypress=”keyEnter(event.keyCode)”> <input type=”text” name=”text1”> <input type=”text” name=”text2”> <input type=”button” name=”save” value=”提交” onclick="keyEnter(-1)”> </form> </body> </html> |