struts在验证后专注于字段,无需js

问题描述 投票:0回答:3

我正在使用struts(表单)+验证 我只是想问我是否可以在没有javascript的情况下验证后将焦点设置在表单上的某些字段上?我想我在《Programming jakarta struts》一书中红色了一些东西,但我不记得了。

谢谢

javascript java html
3个回答
2
投票

无法使用纯 HTML 将焦点设置在某个字段上。 Bozho 建议的

tabindex
想法很好,但只有在您第一次真正按下 tab 时才会起作用。然而,它的缺点是它改变了输入元素的选项卡顺序。不太用户友好。

为此,您确实需要掌握 JavaScript。只需做类似的事情:

window.onload = function() {
   document.formname.${inputname}.focus();
   // or:
   document.getElementById(${inputid}).focus();
};

...其中

${inputname}
动态解析为输入字段的名称,如
<input name="foo">
所示,其中
${inputid}
解析为输入字段的 ID,如
<input id="foo">
所示。 仅此而已。


0
投票

您可以设置您希望在页面重新加载时首先获得焦点的输入的

tabindex="1"
属性。


0
投票

如果不使用 JavaScript,则无法将焦点设置在字段上。其他人尝试过但失败了(CSS 是他们首先考虑的地方,但这也没有解决问题)。

不确定您在 Jakarta Struts 书中读到了什么内容,但也许您指的是 Struts

focus
 标签的 
<html:form>
属性?这会将焦点设置在所需的表单字段上,而无需添加 JavaScript。但 Struts 会添加 JavaScript,所以这意味着您不需要 JavaScript,也不是根本没有 JavaScript。

© www.soinside.com 2019 - 2024. All rights reserved.