2013-08-01 3 views
0

Я хочу передать значение в диалог, но он не будет работать. Я попытался this подход, но не повезлоjsf 2 передача значения в диалоговое окно не работает

Здесь пока моя страница:

<!DOCTYPE html > 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:p="http://primefaces.org/ui"> 
    <h:head> 
     <title></title> 
    </h:head> 
    <h:body> 
     <h:form> 
      <p:inputText value="#{myManagedBean.input}"/> 
      <p:commandButton value="edit" onclick="dlg.show()"/> 

      <p:dialog widgetVar="dlg" modal="true"> 
       passed value:<p:inputText value="#{myManagedBean.input}"/> 
      </p:dialog> 
     </h:form> 
    </h:body> 
</html> 

и мой managedbean

import java.io.Serializable; 
import javax.faces.bean.ManagedBean; 
import javax.faces.bean.ViewScoped; 

@ManagedBean 
@ViewScoped 
public class MyManagedBean implements Serializable { 

    private String input; 

    public String getInput() { 
     return input; 
    } 

    public void setInput(String input) { 
     this.input = input; 
    } 
} 

Я пропускаю что-то?

ответ

1

Сначала вам нужно установить значение в поле «ввод». после того, как вам нужно показать свое диалоговое окно.

вы можете сделать это нравится. Измените свой код В соответствии с этим кодом.

Обратите внимание: «немедленный» и «неполный» атрибут.

<h:body> 
     <h:form> 
      Input : <p:inputText value="#{myBean.input}" immediate="true"/> 
      <p:commandButton value="Sumbit" oncomplete="dlg.show()" update=":form2"/> 
     </h:form> 
     <h:form id="form2"> 
      <p:dialog widgetVar="dlg" modal="true"> 
       passed value:<p:inputText value="#{myBean.input}"/> 
      </p:dialog> 
     </h:form> 
    </h:body> 
+0

Я попробовал ваш пример код, но не повезли :( – borj

+0

Моих плохо, я забыл изменить название боба, извините, его работу сейчас, Тпй ^^ – borj

+0

Вы Добро пожаловать. – KSHiTiJ