2016-08-25 3 views
0

Я не буду использовать PrimeFaces 5.3 с помощью следующего кода:р: selectBooleanCheckBox не работает внутри р: диалог

<p:dialog id="dlg1" appendTo="@(body)" header="Confirm Dialog" widgetVar="dlg1" modal="true"> 
         <h:form id="dialogform"> 
         <h:outputText id="confirmlabel" value="Are you Sure you want to #{reportRunnerNamedBean.currentCommand} ?" /> 
         <br/> 
         <center> 
          Check to send only missed emails:<p:selectBooleanCheckbox id="sendOnlyMissedBox" value="#{reportRunnerNamedBean.sendMissedOnly}"></p:selectBooleanCheckbox><br/> 
          <p:commandButton id="yesButton" value="Yes" action="#{reportRunnerNamedBean.runCurrentCommand()}" onstart="startWait();PF('waitDialog').show();" oncomplete="PF('waitDialog').hide();stopWait();" onclick="PF('dlg1').hide();" process="@form"/> 
          <p:commandButton id="noButton" process="@this" value="No" onclick="PF('dlg1').hide();"/> 

         </center> 

         </h:form> 
        </p:dialog> 

Независимо от того, значение боба основы для sendMissedOnly установлено в ложь. Я подтвердил это, добавив отладчик. Я даже попытался добавить ajax в поле, он все равно остается ложным каждый раз, независимо от того, проверен он или нет. p:selectBooleanCheckbox просто не работает в диалоговом окне?

ответ

0

Я понял это. Это было потому, что диалог был в форме. Похоже, что когда диалог находится в форме и у вас есть форма внутри самого диалога, компонент не будет обработан. Кажется, JSF/primefaces не любит несколько слоев форм или диалогов, определенных в формах. Если у вас есть аналогичная проблема, убедитесь, что ваш диалог определен вне любой формы. Перемещение диалога может привести к изменению путей к компонентам. Самый простой способ разрешить это - использовать удобные для p-заголовка такие как: update: "#:. {p: component ('compoment_name')}">, который заставит его найти его независимо от того, где в дереве происходит компонент ,

+0

Всегда, всегда, всегда создавайте [mcve]. При этом вы либо обнаруживаете причину проблем, либо облегчаете другим помощь. – Kukeltje

+0

Это не проблема JSF. Это была основная проблема с HTML. Я рекомендую сначала взять паузу JSF и сначала изучить базовый HTML. – BalusC

+0

Благодарим вас за ответ. Мне не нужен базовый класс html. Я редактировал несколько крупных проектов, а также выполнял роль системного администратора, администратора сети, администратора и администратора базы данных. Я увидел проблему, разместил вопрос, потом понял. У меня была ошибка в моем синтаксисе, которая истинна, и хотя она, возможно, не была проблемой jsf, я увидел проблему и исправил ее несколько минут спустя. Я не вижу, как комментарии в комментариях, которые не отвечают на вопрос, но вместо этого публикуют пассивные агрессивные комментарии, ничего не дают. Еще раз спасибо за ваш комментарий. – Rhino

Смежные вопросы