簡體   English   中英

JSF:inputText與dataTable中的轉換器問題

[英]JSF: inputText with converter in dataTable Problem

我用自定義轉換器在h:dataTable中為單元格構建了ah:inputText。 如果我重新渲染整個表格,則可以轉換輸入文本並顯示轉換后的文本。

問題是,重新整理整個表將釋放下一個輸入框的焦點。 我試圖清楚地解釋它。

我有的問題:

  1. 用戶在表格單元格中輸入的數據。
  2. 用戶按Tab鍵並跳到表中的下一個輸入框。
  3. 同時,剛輸入的文本將被轉換並立即顯示。
  4. 但是由於整個表的重新呈現,用戶失去了下一個輸入框的焦點。

我想要的是:

  1. 用戶在表格單元格中輸入的數據。
  2. 用戶按Tab鍵並跳到表中的下一個輸入框。
  3. 同時,剛輸入的文本應立即轉換並顯示。
  4. 用戶不應失去下一個輸入框的焦點(可以使用部分重新渲染)。

我還嘗試將ID分配給每個單元以進行部分重新渲染,但是我不知道如何在dataTable中執行此操作。

有人有解決問題的辦法嗎? 謝謝。

只需在f:ajax render屬性中引用輸出組件的id

<h:dataTable value="#{bean.model}" var="item">
    <h:column>
        <h:inputText value="#{item.value}">
            <f:ajax event="blur" render="output" />
        </h:inputText>
    </h:column>
    <h:column>
        <h:outputText id="output" value="#{item.value}" />
    </h:column>
</h:dataTable>

嘗試這個:

<h:inputText value="#{item.value}">
  <f:ajax event="blur" render="@this" execute="@this"/>
</h:inputText>

execute屬性應觸發轉換器。 這樣,您不需要單獨的outputText。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM