2013-09-06 3 views
2

Я пытаюсь повторить Ajax форму диалога primefaces как в Primefaces витринеprimefaces диалоге не работает

Мой JSF фрагмент кода, как показано ниже

<h:body> 

<p:commandButton id="showDialogButton" type="button" value="Show" 
    onclick="PF('dlg').show()" /> 

<p:dialog header="Enter FirstName" widgetVar="dlg" appendToBody="true" 
    resizable="false"> 
    <h:form id="form"> 

     <h:panelGrid columns="2" style="margin-bottom:10px"> 
      <h:outputLabel for="firstName" value="firstName:" /> 
      <p:inputText id="firstName" value="#{backingBean.firstName}" /> 
     </h:panelGrid> 

     <p:commandButton id="submitButton" value="Submit" update=":display" 
      oncomplete="PF('dlg').hide();" /> 

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

<p:outputPanel id="display" style="display:block;margin-top:10px;"> 
    <h:outputText id="name" value="Hello #{backingBean.firstName}" 
     rendered="#{not empty backingBean.firstName}" /> 
</p:outputPanel> 

Мой управляемый компонент

@ManagedBean 
@ViewScoped 

public class BackingBean implements Serializable{ 


    private String firstName; 

    public String getFirstName() { 
     return firstName; 
    } 

    public void setFirstName(String firstName) { 
     this.firstName = firstName; 
    } 


} 

Диалог не отображается при нажатии кнопки отправки :(У меня также есть ded appendToBody = "true", но нет результата. В результате я получаю ошибку javascript как «Ожидаемый объект». Пожалуйста, помогите мне решить эту проблему.

ответ

5

какая версия используемых вами поверхностей?

Если вы используете Primefaces 3.5 или старше:

<p:commandButton id="showDialogButton" type="button" value="Show" 
    onclick="dlg.show()" /> 

Для Primefaces 4,0:

<p:commandButton id="showDialogButton" type="button" value="Show" 
    onclick="PF('dlg').show()" /> 
+0

Является ли второй вызов javascript? Я просто хочу знать разницу между этими двумя вызовами. –

+0

У меня есть мой ответ, это более понятно для вас? –

+0

Спасибо за тонну Lamq.Я использую PF 3.5, как вы упомянули, это может работать только с onclick = "dlg.show() – javawarrior

2

В моем случае я имел связь скрипт для JQuery в заголовке. Я потерял его, и правильность начала работать правильно

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