我需要在加载页面时将输入焦点指向特定的inputtext组件(以允许使用条形码扫描仪输入值).
在纯HTML中,我会在body标签中添加一个JavaScript"onload"处理程序,但在JSF中必须有更好的方法.
实现这一目标的"最干净"方式是什么:
有趣的问题.
JSF中没有开箱即用的功能.您已经知道如何在纯HTML/Javascript中执行此操作,除了疯狂的ID之外,没有什么不同的JSF添加到此.
因此,对于"静态"访问,您只需确保指定完整的JSF ID,例如."myForm会:mydiv:myinput".这不是很干净,但好像你的页面发生了变化,那么这个ID也可能会发生变化.
理想情况下,你有一个嵌入你的JSF组件,<h:inputText>
表明需要关注焦点.例如:
<h:inputText value="#{whatever}">
<my:focusComponent />
</h:inputText>
Run Code Online (Sandbox Code Playgroud)
从技术上讲,这不是一个难的解决方案.组件只会找到它的ID,然后添加一些调用focus()的javascript.
Seam与它的<s:defaultAction/>
组件类似,使链接或按钮响应回车键.您可能想查看其源代码.
归档时间: |
|
查看次数: |
9403 次 |
最近记录: |