Как обновить только заголовок вкладки в p: tabView / p: accordion или аналогичном компоненте?
Я пытаюсь сделать заголовок некоторых вкладок подчеркнутым, если какой-то конкретный контент отображается на этих вкладках с помощью обновления ajax (только заголовки, ничего больше). В настоящее время это работает, только если я обновляю страницу или весь компонент (но это плохая идея из-за загрузки большого количества данных из базы данных).
Это возможно? Я попытался получить и обновить этот компонент на стороне клиента с помощью jQuery (получение элемента по href) и из bean-компонента (RequestConext.getCurrentInstance (). Update ()), но безуспешно.
Сгенерированный HTML (стили исключены):
<div id="m_tabview" style="display: block;" data-widget="m_tabviewWv">
<ul role="tablist">
<li role="tab" aria-expanded="true">
<a href="#m_tabview:j_idt25">Basic information</a>
</li>
<li role="tab" aria-expanded="false">
<a href="#m_tabview:documentsTab">
<u>Documents</u>
</a>
</li>
<li role="tab" aria-expanded="false">
<a href="#m_tabview:j_idt191">Social data</a>
</li>
<li role="tab" aria-expanded="false">
<a href="#m_tabview:contactsTab">
Contacts
</a>
</li>
...
</ul>
</div>
И есть две вкладки с изменяемыми заголовками: Документы (уже подчеркнуты) и Контакты.
Код XHTML выглядит следующим образом:
<p:tabView id="m_tabview" widgetVar="m_tabviewWv" scrollable="false">
<p:tab title="Basic information">
<h:form id="base_form">
<!-- Some form data with submit button -->
</h:form>
</p:tab>
<p:tab id="documentsTab" name="documentsTab" title="#{clientform.documentsHeaderInline}">
<h:form id="documents_form">
<!-- Some form data with submit button -->
</h:form>
</p:tab>
<p:tab title="Social data">
<h:form id="social_data_form">
<!-- Some form data with submit button -->
</h:form>
</p:tab>
<p:tab id="contactsTab" title="#{clientform.contactsHeaderInline}">
<h:form id="сontacts_form">
<!-- Some form data with submit button -->
</h:form>
</p:tab>
</p:tabView>
Когда пользователь нажимает кнопку «Сохранить», резервный бобclientform
при необходимости измените названия, а затем мне нужно обновить их динамически, но я не знаю как.
Версия Primefaces - 4.0.6 и, к сожалению, на данный момент не может быть обновлена.