【发布时间】:2012-04-19 09:57:03
【问题描述】:
我在页面上有一个按钮,通过 AJAX 请求刷新我的数据表。像这样的:
<h:form id="datatable">
<p:dataTable/>
</h:form>
<p:commandButton update=":datatable">
这一切都很好,除了刷新表时它会恢复为不排序任何内容,同时仍然显示它是基于先前值排序的。换句话说,标题仍然突出显示,箭头仍然指向排序方向,但实际上没有执行排序。显然这并不理想。
理想情况下,我希望组件将其排序顺序保持在视图状态,然后在 AJAX 请求期间提交正确的参数(以便正确定义排序)。我错过了一个参数还是什么?其他人有这个问题吗?
据我所知,表格何时需要排序,它会发布以下选项:
<componentID>_sortDir
<componentID>_sortKey
<componentID>_sorting
<componentID>_updateBody
当我刷新表单时,这不会发生。如果我只是刷新表格也不会发生(我认为我可以通过直接更新组件来解决问题)。有没有办法让表格正确刷新?
【问题讨论】:
标签: ajax sorting jsf-2 primefaces datatable