`
lgx2351
  • 浏览: 175959 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

关于表单回车自动提交的讨论

阅读更多

在做超限查询时,为了用户操作的易用性,在用户输入车牌号码后,直接回车就进行查询的操作,而不是等用户用鼠标点击“查询”了才发送请求去查询。可能我们都以为很简单,就是“查询”的时候(回车)去做发个查询的请求就行了,确定是如此。可是,如果只有一个用户输入车牌号码的表单text时,就会有些问题。

     我们的查询操作是发送一个ajax请求,而不是把表单提交上去,但是奇怪的是,只要一按回车键,表单就自动提交了,并没有去执行我希望执行的发送ajax请求。

查了资料,才知道:当在一个form中只有一个text元素,这时候如果按回车相当于对form进行了一个submit操作,所以用户在输入完按回车就代表了submit。如果一个form中不是只有一个text元素,而还有其它的text元素的话,就不会自动提交了。

     我解决并测试的过程,在程序中用户输入的车牌号的text的如下:

<input type="text" name="LICENSE_CODE" size="10" onkeydown="if(event.keyCode==13){overLimitRecMgr.querySpecial();}"/>

 这时候一直没有执行overLimitRecMgr.querySpecial(),而是执行form的submit操作了,可以用setTimeout来测试,如下:

if(event.keyCode==13){window.setTimeout('overLimitRecMgr.querySpecial()',500);return false;}

 这时候在执行完表单的自动提交后,延迟了0.5秒后再执行了ajax的请求:overLimitRecMgr.querySpecial()。

     其实最好的解决办法是:

     先让form不自动提交,然后在keydown==13时做自己想做的事,如发送ajax的请求等。如下处理:

<form action="/jsp/over_mgr/over_limit_record/queryAllList.do" method="post" onSubmit="return false;">

 通过在from中设置onSubmit="return false;"就可以屏避了表单自动提交的问题。

1
0
分享到:
评论

相关推荐

    按回车键提交表单~~~~~

    如果确实按下了回车键,则模拟点击提交按钮的行为,进而实现表单的自动提交。 ### 2. 兼容性问题及解决方案 在上述代码中,可以看到开发者为了兼容IE浏览器而特别编写了一段逻辑。这是因为早期的IE浏览器与其他...

    网页中表单按回车就自动提交的问题的解决方案

    在网页设计中,表单是用户与服务器交互的重要组成部分,其中的一个常见问题是在表单内按下回车键会自动触发表单的提交。这在某些情况下可能会带来不便,例如用户可能意外地提前提交了未完成的表单。本文将详细讨论这...

    如何去除表单的回车即提交即回车!=提交

    这样,由于存在多个输入框,回车键就不会自动触发提交了。不过,这种方法在某些情况下可能会影响表单的逻辑,需要谨慎使用。 3. **利用JavaScript进行事件处理**: - 虽然题目提到使用JavaScript不在讨论范围内,...

    jquery 绑定回车动作扑捉回车键触发的事件

    在jQuery中,捕获回车键触发的事件是常见的需求,尤其在表单提交或文本输入等场景。这里我们详细探讨如何实现这个功能。 首先,jQuery的`keydown`事件是用于监听用户按下键盘按键的动作。当用户按下回车键(键盘上...

    Disable the Return Key in a TextBox

    然而,在某些情况下,我们可能希望禁用用户按下回车键(Return键)时触发的默认行为,比如防止表单意外提交。标题"Disable the Return Key in a TextBox"正是讨论如何实现这一功能。 在Windows Forms环境下,...

    extjs 登陆页面+验证码

    博主可能分享了如何创建表单、添加输入字段、设置验证码逻辑以及如何响应用户操作,如回车提交等。 首先,创建登录页面需要的基本元素有用户名输入框、密码输入框以及登录按钮。ExtJS提供了一个叫做`Ext.form.Panel...

    01好看的登录页面.zip

    在这个登录页面模板中,JavaScript可能被用来验证用户输入,如检查用户名和密码是否为空,或者在用户按下回车键时自动提交表单。此外,JavaScript还可以实现一些视觉反馈,比如在用户输入时显示错误提示,或者在成功...

    textarea在文本之后获得焦点,适合ie,火狐,谷歌

    当然,还可以设置其他属性,如`name`(用于表单提交)、`placeholder`(占位符文本)等。 接下来,我们讨论如何在文本输入后让`textarea`自动获取焦点。这通常通过JavaScript实现,因为HTML本身不支持这样的行为。...

    Jquery 监视按键,按下回车键触发某方法的实现代码

    ` 来同时实现对焦和点击操作,从而达到在 IE 浏览器中触发回车键时提交表单的目的。这背后的原因是 IE 浏览器的 `.focus()` 方法在某些情况下具有触发点击事件的副作用,这是一种兼容性处理。 在另一个问题中,`$...

    jQuery.autocomplete 支持中文输入(firefox)修正方法

    例如,在表单输入框中按回车键会直接提交表单,而不是选择自动完成项。这显然不是我们所希望看到的。 因此,提出了一种更为合适的解决方案,即在原有的事件触发机制之上增加一个input事件处理器。input事件在Fire...

    ButtonFocus.zip_Java编程_Java_

    注意,实际的事件处理逻辑(即`actionPerformed`方法内的代码)取决于应用的具体需求,可能是打开一个新的窗口、提交表单数据或者执行其他任何指定的操作。 通过以上步骤,我们不仅了解了如何在Java中设置JButton的...

    Retain-CIS:MGMT230的MVP登陆网站

    4. **JavaScript**:可能用于客户端的表单验证和交互,如检查输入是否为空,或者在用户按下回车键时自动提交表单。 在实际开发中,为了确保安全,通常会结合服务器端语言(如PHP、Python或Node.js)和数据库(如...

    google-homepage-ver2

    此外,Google主页还可能包含一些JavaScript代码,用于实现交互效果,比如自动聚焦搜索框(`autofocus`属性),或者在用户按下回车键时提交表单。这些功能可以通过内联JavaScript(在HTML标签中使用`onkeyup`等事件...

Global site tag (gtag.js) - Google Analytics