2013-02-14 35 views
1

FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("compId")返回空值outputLableoutputText,但不適用於inputTextinputHidden 這是爲什麼?我如何獲得價值outputLabel或。的outputText?JSF - 。getExternalContext()getRequestParameterMap()獲得(「ID」)返回null

+0

爲什麼要獲取outputLabel和outputText值?這些值不會被提交,因爲它們不是用戶輸入/選擇的一部分。 – 2013-02-14 15:59:52

+0

是的,但我將它們作爲隱藏發送給瀏覽器。我無法使用inputHidden,因爲它不適合我需要的方式。我需要以某種方式獲取outputText/outputLabel值 – sura2k 2013-02-14 16:05:56

+0

如何設置標籤? – 2013-02-14 16:12:24

回答

2

這只是HTML是如何工作的。只有form elements送他們name=value對作爲HTTP請求參數,因爲它們的價值可以通過終端用戶來控制。

對於輸出標籤和輸出的文本,這將不會發生。它會沒有任何意義,因爲ir值通常不由最終用戶控制。這些值通常已由web開發者控制。如果服務器端已經知道它們,就沒有必要發送它們的副本。但是,如果您允許最終用戶通過JavaScript方式在客戶端更改它們,那麼您應該添加一個隱藏的輸入元素(<input type="hidden">)並在其上設置更改的值。隱藏的輸入也會將它們的name=value對作爲HTTP請求參數發送。

+0

我在等你的答案。我知道,我做錯了什麼。無論如何,你能告訴我,如果我使用綁定,那麼是否有機會獲得該價值? – sura2k 2013-02-14 16:39:43

+0

有很多方法可以從視圖中提取開發人員控制的數據。哪一個是正確的取決於具體的功能要求,在這一點上仍然是未知的。另見我對你的問題的評論。 – BalusC 2013-02-14 16:41:07

+0

我使用了不同的getter(不同的名稱),並返回之前使用的值,我將新的setter留空。它的工作原理。只有在閱讀完答案後,我才瞭解它的工作方式。你救了我 :)。謝謝! – sura2k 2013-02-14 16:49:43

相關問題