Jörn Zaefferer のオートコンプリート プラグイン 1.2.2 を使用しています。Jquery UI に含まれている新しいバージョンのプラグインを使用できません。検索でジョブ名またはジョブ ID の両方を送信するサーバー上のスクリプトにリンクしています。
return_arr = array();
/* If connection to database, run sql statement. */
if ($connect)
{   
    $fetch = mysql_query("SELECT * FROM jobs WHERE job_name LIKE '%". mysql_real_escape_string($_GET['q']) ."%' OR insert_id LIKE '%". mysql_real_escape_string($_GET['q']) ."%' ORDER BY job_name ASC");
    /* Retrieve and store in array the results of the query.*/
    while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC)) {
        $key = $row['job_name']."-".$row['insert_id'];
        array_push($return_arr,$key);
    }
}
/*Sort Array*/
foreach ($return_arr as $value) {
    echo "$value\n";
}
私はjavascriptで次の設定を使用しています:
$("#job_select").autocomplete('../lib/job_select2.php', {  
        minChars: 0, 
        autoFill: true,  
        mustMatch: true,  
        matchContains: false, 
        scrollHeight: 220  
});
フィールドにジョブ名を入力すると、検索文字列によって作成されたジョブのリストが表示されます。タブでフィールドの外に出ても、入力は残ります。
ただし、jobid を入力すると、ジョブのリストが表示されますが、タブでフィールドの外に出ると、エントリが消えます。mustMatch が true であることはわかっていますが、それを true に設定する必要があります。データベースにまだない入力を受け入れたくありません。
どんな助けでも大歓迎です。
ありがとう