1

readonly属性は<p:autoComplete>機能しません。設定後もテキストを入力できますreadonly="true"disabled="true"選択を削除できないため、使用したくありません。これはどのように発生し、どうすれば解決できますか?

4

3 に答える 3

3

既知の問題のようです (少なくとも 3.4.2 では)

問題 5070: 読み取り専用で自動完了しますが、サーバーに ajax を送信します

考えられる回避策:

代わりに、outputText または読み取り専用の inputText コンポーネントをレンダリングします。

PrimeFaces コミュニティ フォーラム : autocomplete readonly: それでも ajax を送信する

于 2013-01-20T09:24:25.933 に答える
0

私も同じ問題を抱えていました。しかし、私は回避策を見つけました。オートコンプリートセットの個々のコンテンツを読み取り専用にすることができます。

<script type="text/javascript">
    //<![CDATA[

    $(document).ready(function() {
        document.getElementById('contentForm:myId_input').setAttribute("readOnly","true");
    });

    // ]]>
</script>

ここで、 myIdはオートコンプリートの ID です。入力ボックスには id myId_inputがあり、これは単に '_input' が最後に追加されたものです。

既存の値に関する限り、selectおよびunselectイベントを使用して変更を制限できます。

于 2014-11-04T15:48:23.803 に答える
0

それは私の回避策です。オートコンプリート コンポーネントのように見えます

<h:panelGroup layout="block" styleClass="ui-autocomplete ui-autocomplete-multiple">
    <h:panelGroup layout="block" styleClass="ui-autocomplete-multiple-container ui-widget ui-inputfield ui-corner-all">
        <ui:repeat value="#{bean.values}" var="value">
            <h:panelGroup layout="block" styleClass="ui-autocomplete-token ui-state-active ui-corner-all">
                <h:outputText styleClass="ui-autocomplete-token-label" value="#{value}"/>
            </h:panelGroup>
        </ui:repeat>
    </h:panelGroup>
</h:panelGroup>
于 2016-04-17T21:59:12.183 に答える