0
私はKnockout JqAutocompleteプラグインを使用しています。オートコンプリートから項目を選択すると、その項目のIDと名前を選択します。 ノックアウトjqAutocomplete:IDと名前を選択するにはどうすればよいですか?
<table>
<tr>
<th>remote data</th>
</tr>
<tr>
<td>
<input data-bind="jqAuto: { source: remoteHandler, value: remoteValue, inputProp: remoteTest, labelProp: 'test', valueProp: 'val', options: { delay: 250 } }" />
</td>
</tr>
<tr>
<td>
<pre data-bind="text: ko.toJSON(remoteValue)"></pre>
<pre data-bind="text: ko.toJSON(remoteTest)"></pre>
</td>
</tr>
</table>
var ViewModel = function() {
this.remoteValue = ko.observable();
this.remoteTest = ko.observable();
this.remoteHandler = function(term, callback) {
setTimeout(function() {
callback([
{ test: term + "-1", val: 1 },
{ test: term + "-2", val: 2 },
{ test: term + "-3", val: 3 },
{ test: term + "-4", val: 4 },
{ test: term + "-5", val: 5 }
]);
}, 500);
}
};
ko.applyBindings(new ViewModel());
がhttp://jsfiddle.net/arame3333/b0jqmmjt/1/
とhttps://github.com/rniemeyer/knockout-jqAutocomplete
Iを参照してください、私はJqAutocompleteのドキュメントは非常によくそれを説明するように見えるけど、私はすべてのバリエーションを試してみて、私はそれを動作させることはできませんIdだけでなくテキストを表示したい。しかし、基本的なビューモデルでは、両方を更新したいと思っています。
あなたは 'valueProp'オプションを削除した場合、全アイテムがremoteValue''に格納されます。 UIの 'text'プロップだけを表示するには、' with:remoteValue'と 'text:text'を使用してバインドします。 http://jsfiddle.net/vzbr76yg/ – user3297291
ありがとうございます。私はあらゆる種類のバリエーションを試しましたが、私はそのバリエーションを考えませんでした。それは正解です。 – arame3333