2013-10-05 22 views
0

我的形式看起來像這樣:隱藏的inputText:就地

 <p:inplace> 
      <h:inputText id="description" value="#{cc.attrs.description}" /> 
     </p:inplace> 

當用戶點擊到p的文字:就地的inputText的將顯示編輯值。

如何隱藏inputText或p:inplace當用戶單擊其他位置或控件它自失去焦點。

謝謝。

回答

1

使用blur事件在inputText,id值傳遞給它:

<p:inplace widgetVar="basic_#{cc.id}"> 
    <p:inputText value="#{cc.attrs.description}" id="description"> 
     <p:ajax event="blur" oncomplete="basic_#{cc.id}.hide();" /> 
    </p:inputText> 
</p:inplace> 
+0

這個答案會更好,如果考慮到這樣的事實,這是一個複合材料部件的一部分,因此可以列入多次在同一視圖中,因此可能會導致'widgetVar'名稱中的衝突。解決方法是:在widget的名字中加上一些獨特的東西,例如'#{cc.id}',像這樣'widgetVar =「basic _#{cc.id}」'並且像這樣引用'oncomplete =「basic _#{cc .ID} .hide()「'。 – BalusC

+0

@BalusC true!我什至沒有看到它是一個複合...更新;-) –