在p:tabView中启用p:选项卡已禁用而不更新所有表单(primefaces)

时间:2016-04-21 08:18:21

标签: javascript primefaces

如何更新已禁用的tabView中的选项卡。

我尝试仅按类名(.ui-tabs-nav)更新标头,但没有任何反应。我还试图在tabViewTab之间添加一个div来通过id更新它或者只使用一个样式,但JSF不会渲染这个。

1 个答案:

答案 0 :(得分:1)

通过更改类值,我找到了直接使用JavaScript的解决方案。

当JSF生成HTML代码时,它会按值填充这些选项卡中的每个类标记。如果我们观察到启用的标签,我们会注意到该类包含ui-state-default ui-corner-top,而禁用的类包含ui-state-default ui-corner-top ui-state-disabled

选择我使用此表达式所需的标签

$('ul.ui-tabs-nav li:eq(n)')

并更改类值

1- $('ul.ui-tabs-nav li:eq(n)').attr('class', 'ui-state-default ui-corner-top ui-state-disabled');  

2- $('ul.ui-tabs-nav li:eq(n)').attr('class', 'ui-state-default ui-corner-top'); 

另一种选择是使用:

使用widgetVarPF('tabView').enable(n)

在primefaces tabView中的

PF('tabView').disable(n)标记

n是从0开始的标签Rank