jQuery UI オートコンプリート (カスタム データと表示) の変更に問題があります。まず、source オプションで複数の配列を呼び出す方法。2 つ目は、オートコンプリートの結果がどの配列からのものかを検出し、if ステートメントで使用できるようにすることです。
私はjQueryが初めてなので、できるだけ明確にしようとします...どんなガイダンスも大歓迎です!
より完全なコード例: http://codepen.io/seejaeger/pen/iqbke
概要:
- 2 つのローカル配列をソースとして宣言して連結する
- 提案結果がどの配列から来たかを追跡する
- if ステートメントを使用して、親配列に基づいて異なる出力を表示する
各配列項目には次のプロパティがあります: value
、label
、desc
desc
検索不可能なデータとして使用され、
2 つの異なる形式の結果を出力する機能を提供するため、特に注意を払っています。下記参照:
最初の配列
var funds = [
{
value: "fundtest",
label: "Fund Name Test", //searchable
desc: "(Ticker)", // non-searchable
},
{
value: "fundtest2",
label: "Fund Name Test 2", //searchable
desc: "(Ticker)", // non-searchable
}
];
2 番目の配列
var tickers = [
{
value: "tickertest",
label: "(Ticker Test)", //searchable
desc: "Fund Name", //non-searchable
},
{
value: "tickertest2",
label: "(Ticker Test)", //searchable
desc: "Fund Name", //non-searchable
}
];
出力
検索候補がfunds
配列からのものである場合、次のように出力します。
item.label + " " + item.desc
検索候補がtickers
配列からのものである場合、出力は次のとおりです。
item.desc + " " + item.label
それらがどのように交換されているかに注意してください。
異なる HTML 出力構造により、両方の結果を「ファンド名 (ティッカー)」
として画面に出力できます。
アップデート
パート 1 と 2 は現在解決済みです。
パート3にはまだいくつかの問題があります。
解決したら、最終的に回答を投稿します(誰かが魔法のようにチャイムを鳴らさない限り)。
TRさん、ご指導ありがとうございました。
この作品の最新版はこちらからご覧ください:
http://codepen.io/seejaeger/pen/iqbke