1

Web サイトの検索フォームを開発しており、JQuery UI オートコンプリート ウィジェットを使用して、ユーザーの入力に応じて値を提案する予定です。これまでのところ、提案は機能します。

問題は、ユーザーがリストから値を選択したときに、入力フィールドが更新されないことです。同じ問題が以前にも報告されているようです。たとえば、Jquery UI Autocomplete ではマウスでオプションを選択できなくなりましたが、解決策は公開されていません。

コードは可能な限り単純です。

<script> 
jQuery(document).ready(function(){

    var availableTags = [
        "ActionScript",
        "AppleScript",
        "Asp",
        "BASIC",
        "C",
        "C++",
        "Clojure",
        "COBOL",
        "ColdFusion",
        "Erlang",
        "Fortran",
        "Groovy",
        "Haskell",
        "Java",
        "JavaScript",
        "Lisp",
        "Perl",
        "PHP",
        "Python",
        "Ruby",
        "Scala",
        "Scheme"
    ];

    jQuery("#tbauthor").autocomplete({
        source: availableTags,
    });   

});
</script>
<div id="primary" class="aside main-aside sidebar">
    <form style="font-size: 10px;" name="search-news" action="." method="get">
    <table border= "0">

        <tr class="advanced"><td>Cerca per autor</td><td><input type="text" id="tbauthor" name="autor" /></td></tr>

    </table>
</form>
</div>

Arras テーマ、JQuery 1.8.3、および jQuery UI 1.9.2 (既に wordpress インストールに含まれています) で wordpress 3.5 を使用しています。オートコンプリート ライブラリをロードするために、header.php の wp_enqueue_script を呼び出します。これは抜粋 (header.php) です。私の唯一の推測は、ロードされたライブラリに問題があるということです:

wp_enqueue_script('jquery');
wp_enqueue_script('jquery-ui-tabs', null, array('jquery-ui-core', 'jquery'), null, false); 
wp_enqueue_script('jquery-ui-autocomplete', null, array('jquery-ui-core', 'jquery'), null, false);

更新、質問が解決されたため、この例は動作しない例ではなくなりました: 最後に、動作しない例を私のサイトで見ることができます: http://www.cabanyal.com/nou/resultat/?id= 1994年

よろしくお願いします。

4

1 に答える 1

1

WordPress テーマには、オートコンプリートとの競合を引き起こしている古いバージョンの jQuery バリデータ プラグインが含まれています。

<script type='text/javascript' src='http://www.cabanyal.com/nou/wp-content/themes/arras/js/jquery.validate.min.js'></script>

ここで問題を再現できました: jsfiddle.net/VAna6/1

スクリプトを最新バージョンに変更すると、オートコンプリートがhttp://jsfiddle.net/VAna6/2/に示されているように機能するはずです。

于 2013-01-13T17:52:38.220 に答える