在我的应用程序中使用默认值加载我的数据表,该默认值放在第一页(登录后)。加载数据时,数据表会提示“No Record Found”,这对用户来说很困惑。我是否隐藏了这一点正在加载?
答案 0 :(得分:6)
我知道这有点显而易见,但是当您显示默认值时,您可以在emptyMessage=""
中设置<p:dataTable>
。
但是,如果您需要稍后显示emptyMessage
(例如,当要加载用户特定数据时),您可以在首次加载时使用以下内容“禁用”它:
emptyMessage="#{dataBean.firstLoad ? '' : 'No records found.'}"
其中firstLoad
将是您的支持bean中的一个方法,当用户刚刚登录时返回true
(例如,要加载默认值),而false
则不是,这意味着应该加载特定于用户的数据,而<p:dataTable>
实际上可能是空的。
答案 1 :(得分:1)
未经测试
我想你在加载表格数据之前点击了一些按钮
所以你可以添加jquery命令来隐藏包含空消息消息的行到它的onclick属性,如下所示
onclick="jQuery('#YourFormIdOrYourTableId .ui-datatable-empty-message').hide();"
你可以
使用jQuery('#YourFormIdOrYourTableId .ui-datatable-empty-message').show();
或者,如果您使用的是primefces按钮,则可以尝试
onstart="jQuery('#YourFormIdOrYourTableId .ui-datatable-empty-message').hide();"
onsuccess="jQuery('#YourFormIdOrYourTableId .ui-datatable-empty-message').show();"
成功时调用.show()
是为了让表在下次表空时显示空消息...