JSP / servlet组合在只有提交按钮的表单中无法通过按Enter键提交表单。

3
这是我之前的问题的后续:JSP / servlet / IE组合不会在按下回车键时提交表单详细信息 在表单内部,我们有:
<input ... type="submit" name="confirm" value="Confirm"/>

这个表单上没有输入字段。这个表单出现在工作流程的最后,实际上是一个确认继续的验证。

当按下回车键时,此表单不会提交给IE或Firefox。如果按下“确认”按钮,则可以正常工作。

根据我之前问题的答案,我尝试添加了虚拟字段,例如:

<input type="hidden" />

或者
<input type="text" style="display: none;" />

但是它们没有任何区别。

由于各种原因,我们希望不使用Javascript。

有什么建议可以让回车键提交?

1个回答

2

很遗憾,要使它起作用,表单中至少应该有一个可聚焦的输入元素,并且只有在输入元素具有焦点时才能使用。如果没有任何输入元素,则唯一的解决方法就是让Javascript监听body中的enter键。

<body onkeypress="if (event.keyCode == 13) document.formname.confirm.click();">

其中formname是父级<form>元素的name属性的值。

请注意,我使用了document.formname.confirm.click()而不是document.formname.submit(),因为否则IE将不会将按钮的名称和值对发送到服务器端。

唯一没有使用Javascript的方法是让用户tab到按钮,然后按enter键。这一切都与所使用的浏览器无关,因此不是IE特定的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接