我按照以下选项从列表框中提交了一个页面:
onchange="submit()"
选择完成后,页面会立即滚动到页面顶部,其中包含取决于选择的新信息。
jsf中是否存在滚动发生的方式?
祝你好运 爱德蒙
答案 0 :(得分:1)
这不是JSF特有的。这是HTML特有的。当您让JSF在生成的HTML input / select元素上生成onchange="submit()"
属性时,您基本上指示HTML input / select元素调用父HTML {{1}的submit
函数元素。这将触发完整的同步请求,从而导致整页重新加载。默认行为是将显示页面顶部,就像通过普通链接打开页面或执行刷新一样。
如果要执行异步提交,只需输入一些ajax即可。 JSF 2.x通过<form>
标记内置了ajax支持。
所以,而不是
<f:ajax>
DO
<h:selectOneMenu ... onchange="submit()">
...
</h:selectOneMenu>
如果您打算在同一视图中的其他位置更新特定组件,请在<h:selectOneMenu ...>
...
<f:ajax />
</h:selectOneMenu>
属性中指定其绝对或相对客户端ID。
render