我有多个文本字段,每个字段都有onChange =“submit();”为了立即保存数据。我遇到的问题是,标签到下一个字段将无法工作,因为它将提交,然后由于页面提交而失去对该字段的关注。此外,如果用户要单击要编辑的下一个文本字段,它将失去焦点,并且由于页面提交,他将不得不再次单击它。有没有办法解决这个问题,以便在页面提交后将焦点设置到预期的文本字段?
背景:
我有一个通过这些多个字段填充的动态表。用户将从下拉列表中选择一个值,然后单击“新建”按钮,然后将显示与所选值对应的所有字段。我决定让每个文本字段都提交onChange而不是提交按钮,以便减少由于所有输入数据的复杂性导致的页面混乱。此外,表格和其他所有内容都会自动更新,看起来更酷。
感谢。
答案 0 :(得分:2)
我遇到的问题是,标签到下一个字段不起作用,因为它会提交,然后由于页面提交而失去对该字段的关注。
是的,每次触发onchange事件时,您的表单都会被提交,当JSF生命周期结束时,您的页面会再次呈现,您将失去焦点。
听起来像你有几个输入测试,你想要动态地重新渲染一个表。为什么不尝试使用ajax的另一种方法?首先使用ajax处理输入字段,然后动态地重新呈现表。
示例:
<h:inputText id="input" value="#{mybean.input}" >
<a4j:support
event="onchange"
ajaxSingle="true"
action="#{mybean.doSomething()}"
reRender="myTable" />
</h:inputText>