[英]JSF render component ajax radio button selection
此問題是JSF Primefaces單選按鈕顯示/隱藏/啟用文本區域的后續操作,通過將inputTextArea包裝在panelGroup中解決了該問題中的兩個問題之一,但是我仍然需要弄清楚如何不顯示on當狀態為2(=否)時加載表單,但僅在切換第2列下的單選時顯示。
<p:column ...>
<p:selectOneRadio ...>
...
<p:ajax update="reason" />
</p:selectOneRadio>
</p:column>
<p:column headerText="Reason For Attribute Failure">
<h:panelGroup id="reason">
<h:inputTextarea value="#{qAndA.fail_reason}" rendered="#{qAndA.toggle_value == '2'}" />
</h:panelGroup>
<h:outputText value="" rendered="#{qAndA.toggle_value == '1' or qAndA.toggle_value == '3'}" />
<h:outputText value="#{qAndA.fail_reason}" rendered="#{qAndA.toggle_value == '2' or qAndA.toggle_value == '4'}" />
</p:column>
狀態碼可能有缺陷:
我寧願不必修改狀態代碼,而添加另一個中間代碼,這樣可能會起作用:
除了修改狀態碼,還有其他選擇嗎?
好吧,真正的答案是,如果您不想顯示bean,那么在加載bean時不要將其值設為2。 但是你已經知道了。 您所要問的內容取決於您自己以及您想做什么。 您沒有問題,這更多是設計問題。 話雖如此,這是一個:
也許您想滿足2個條件:
<h:inputTextarea value="#{qAndA.fail_reason}" rendered="#{qAndA.toggle_value == '2' and bean.AnotherCondition}" />
如果您想花哨的話,可以制作一個@ViewScoped bean,以監聽您在帖子中談論的點擊(不確定點擊的作用)。 監聽點擊,並擁有一個布爾屬性,您可以在注冊點擊之后將其設置為true(也許使用動作偵聽器)。 這樣,文本區域僅在單擊時顯示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.