2012-04-26 79 views
7

我有没有一个单一的文本框提交如下表单按钮:单行文本框和提交行为

<html> 
    <form action="http://www.google.com"> 
     <input type="text"/> 
    </form> 
</html> 

当选择文本框,我按下回车键的形式将得到提交和谷歌网页会显示。然而 如果我有两个文本框波纹管:

<html> 
    <form action="http://www.google.com"> 
     <input type="text"/> 
     <input type="text"/> 
    </form> 
</html> 
现在如果我按提交按钮,什么都不会发生

任何人都可以在这里解释:
i)为什么表单在第一种情况下被提交?
ii)为什么表单不在第二种情况下提交?

回答

6

HTML 2.0 Specs之一提交事件:

当表单中只有一个单行文本输入字段时, 用户代理应接受该字段中的Enter作为提交 表单的请求。

禁用此行为的最简单方法是添加隐藏的输入字段。

+0

这是仅适用于文本框? – Vipul 2012-04-26 09:21:02

+0

谢谢在规范文档中明确给出它。 – Vipul 2012-04-26 09:22:23

+0

@添加隐藏的输入对我没有帮助。任何想法? – 2013-07-25 19:41:17

0

这可能是因为在2个输入字段的情况下,浏览器不知道将哪个输入字段处理回车键作为表单提交事件。我不能确定,但​​是这可能是原因,只要您想将数据提交给服务器还经常使用按钮或者你可以定义字段的onClick功能