2011-11-10 38 views
3

我有一個命令鏈接,並在它的點擊我已經在JSF 2.0作爲一個對話框:更新命令鏈接值2.0

<p:commandLink value="(.3%)" style="font-size:10px;" onclick="lrDlg.show()"  id="percentchange"/> 

現在對話框上,我想爲命令鏈接價值的價值:

<h:outputText value="Change Value" /> 
<h:panelGroup> 
<p:inputText size="10" value="#{bean.changeValue}" required="false" 
styleClass=" ui-inputfield ui-widget ui-state-default ui-corner-all " /> 
<h:outputText value="" style="font-size:10px;" /> 
</h:panelGroup> 

我的問題是如何更新inputText的值,以便在commandlink值(顯示爲「(0.3%)」,以反映。

回答

2

使它成爲一個bean屬性。

private String commandLinkValue; 

public Bean() { 
    commandLinkValue = "(.3%)"; 
} 

// ... 

<p:commandLink value="#{bean.commandLinkValue}" ...> 

<h:inputText value="#{bean.commandLinkValue}" ...> 
+0

感謝烏拉圭回合的答覆。我已經完成了上述步驟,但我必須更新按鈕上點擊我正在更新相應的ID像但變化沒有發生。 – curious

+0

您需要刪除'immediate =「true」',以便處理提交的輸入值。學習何時(不)使用'immediate =「true」',閱讀這個答案:http://stackoverflow.com/questions/7636008/richfaces-4-richinputnumberspinner-not-getting-set-in-backing-bean/ 7636245#7636245 – BalusC

+0

感謝BalusC刪除immediate =「true」後它工作 – curious

0

使用jQuery你顯示對話框之前更新輸入字段值:

舉一個id到輸入字段:

<h:inputText id="inputFldId" value="Change Value" /> 

JavaScript函數:

function updateFldAndShowDlg() { 
    var btnVal = jQuery("#percentchange").text(); 
    jQuery("#inputFldId").val(btnVal); 
    lrDlg.show(); 
} 

使用上述功能的命令鏈接onclick事件上:

<p:commandLink value="(.3%)" style="font-size:10px;" onclick="updateFldAndShowDlg()"  id="percentchange"/> 
+0

Psssh,這不是輸入文本。 – BalusC

+0

@BalusC:難道他不是在做什麼?還是我錯了? –

+0

你說的是輸入字段,但是你寫了''。 – BalusC