0
我有valueChangeListener
,當用戶從MySQL另一個h:inputText
顯示數據有關代碼鍵入一些代碼,所述valueChangeListener
作品但第二h:inputText
一個h:inputText
不顯示值,而只顯示值做時,我設置了只讀屬性或更改該組件h:outputText
JSF的inputText僅當是只讀真或的outputText
我Facelets頁面是:
<h:form id="idFacturacion">
<rich:panel>
<f:facet name="header">
<h:outputText value="FACTURACION AL CLIENTE" />
</f:facet>
<h:panelGrid columns="4">
<h:outputText value="Cedula: " />
<h:inputText value="#{facturaBean.encFactura.cedula}" onchange="submit();" valueChangeListener="#{facturaBean.processValueChange}" />
<h:outputText value="Nombre: " />
<h:inputText value="#{facturaBean.encFactura.nombre_cli}" />
</h:panelGrid>
</rich:panel>
</h:form>
facturaBean是:
@ManagedBean
@SessionScoped
public class FacturaBean {
private EncFactura encFactura = new EncFactura();
//getter and setter
public void processValueChange(ValueChangeEvent event){
String ced = event.getNewValue().toString();
try{
//do the database thing
if(resultSet.next()){
encFactura.setNombre_cli(resultSet.getString("nombre_cli"));
}else{
encFactura.setNombre_cli("");
}
}catch(SQLException error){
facesContext.addMessage(null, new FacesMessage("Hubo un error SQL."));
}
}
}
感謝鮑勃·吉爾摩我在這是新和我不會說英語 – AbelTrocha
請參閱 - http://stackoverflow.com/questions/12645593/change-inputtext-value-from-listener-method 和 http://stackoverflow.com/questions/13974989/possible-to-execute-valuechangelistener-for-pinputtext-without-hitting-ent – VeenarM
您需要添加ID爲第二個'inputText'並用ajax重新描繪它。 –