form表单在ie下按回车不进行表单提交
2009-09-22 09:15
316 查看
我们上网的时候经常都需要进行登陆操作
一般网站登陆框包含的部分有:
用户名、密码、验证码等
我们输入完成之后习惯敲击回车,这个时候表单就会提交,基本代码如下:
<form name="f">
<input type="text" name="username" value="" />
<input type="password" name="psw" value="" />
<input type="submit" value="提交" />
</form>
但是通常我们都会对表单进行前期js处理,比如加入一些字段啊,表单验证啊什么的,所以代码可能修改如下:
<form name="f" onsubmit="return false">
<input type="text" name="username" value="" />
<input type="password" name="psw" value="" />
<input type="submit" onclick="check()" value="提交" />
</form>
这样当点击提交按钮或者敲击回车的时候就会触发check()函数,这个过程没有任何异议
但是!
如果将代码变成这样
<form name="f" onsubmit="return false">>
<input type="text" name="username" value="" />
<input type="submit" onclick="check()" value="提交" />
</form>
也就是去掉密码字段,这个时候在ie下如果你输入完输入框的内容直接敲回车,是不会触发check()函数的
只有点击“提交”按钮才行。但是firefox下是没有问题的……
所以比较好的方式是把check()函数放到表单的onsubmit事件中去,像这样:
<form name="f" onsubmit="check(); return false">
这个问题 应该是ie对表单相应回车事件的理解不一样产生的吧,即认为一般用户只有在登陆的时候,输入了密码了,才响应回车事件。其实这个是不合理的,因为有的表单,没有密码这个字段,比如单独输入验证码,敲击回车提交,就会出现上面的问题。
当然,解决方案代价也不大,呵呵
只是一个feature吧
哈哈
一般网站登陆框包含的部分有:
用户名、密码、验证码等
我们输入完成之后习惯敲击回车,这个时候表单就会提交,基本代码如下:
<form name="f">
<input type="text" name="username" value="" />
<input type="password" name="psw" value="" />
<input type="submit" value="提交" />
</form>
但是通常我们都会对表单进行前期js处理,比如加入一些字段啊,表单验证啊什么的,所以代码可能修改如下:
<form name="f" onsubmit="return false">
<input type="text" name="username" value="" />
<input type="password" name="psw" value="" />
<input type="submit" onclick="check()" value="提交" />
</form>
这样当点击提交按钮或者敲击回车的时候就会触发check()函数,这个过程没有任何异议
但是!
如果将代码变成这样
<form name="f" onsubmit="return false">>
<input type="text" name="username" value="" />
<input type="submit" onclick="check()" value="提交" />
</form>
也就是去掉密码字段,这个时候在ie下如果你输入完输入框的内容直接敲回车,是不会触发check()函数的
只有点击“提交”按钮才行。但是firefox下是没有问题的……
所以比较好的方式是把check()函数放到表单的onsubmit事件中去,像这样:
<form name="f" onsubmit="check(); return false">
这个问题 应该是ie对表单相应回车事件的理解不一样产生的吧,即认为一般用户只有在登陆的时候,输入了密码了,才响应回车事件。其实这个是不合理的,因为有的表单,没有密码这个字段,比如单独输入验证码,敲击回车提交,就会出现上面的问题。
当然,解决方案代价也不大,呵呵
只是一个feature吧
哈哈
相关文章推荐
- 禁止form表单回车键进行提交
- Form表单只提交数据而不进行页面跳转的方法
- Form表单只提交数据而不进行页面跳转的方法
- Form表单只提交数据而不进行页面跳转的方法
- 当button按钮放入form表单进行ajax提交遇到的诡异问题
- 使用easyui的form提交表单,在IE下出现类似附件下载时提示是否保存的现象
- 实现表单form提交前进行确认提示 表单提交 确认对话框
- enter 回车提交form表单
- 当form表单中只有一个input时按回车键将会自动将表单提交
- form表单回车提交问题,JS监听回车事件
- 登陆页面的form表单中存在radio时,鼠标点到radio时,回车提交快捷键功能消失的解决办法
- $.post进行form表单提交
- form表单自动回车提交
- Form表单只提交数据而不进行页面跳转的方法
- Form表单只提交数据而不进行页面跳转的方法
- Form表单只提交数据而不进行页面跳转的方法
- form表单回车会自动提交和禁止自动提交
- 当button按钮放入form表单进行ajax提交遇到的诡异问题
- 使用FormData对包含文件类型的form表单进行异步提交(文件上传)并配置回调
- 一个IE7下,用form表单跳转iframe提交,然后下载文件。遇到的很有意思的问题