私のスパでは、ノックアウト js を使用して API からのデータをバインドし、オプションを正常に選択しています。
コード:
<select id="ddlClassificationPosition" name="" data-theme="c" data-bind="options: ClassificationPositionData, optionsValue: 'ClassificationPositionID', optionsText: function (i) { return i.Classification + ':' + i.Position },selectedOptions: SelectedItems, optionsCaption: 'Choose..'">
<option value="0">
Choose..
</option>
</select>
self.SelectedItems= ko.observableArray([]);
var vm = {
ClassificationPositionData: ko.observableArray(positionData),
ClassificationPositionID: ko.observable(),
SelectedItems: ko.observableArray([])
};
しかし、更新ボタンをクリックすると、選択したオプションをデフォルトのテキスト「Choose ..」に変更したいと思います。ボタンクリックで以下のコードを書きました。
<a data-role="button" data-transition="slide" href="#page3" data-icon="arrow-r"
data-iconpos="right" data-bind="event: { click: btnAddContactLink }">
Sample
</a>
self.btnAddContactLink = function () {
self.SelectedItems.removeAll();
}
更新ボタンをクリックしても、テキストは変更されません。しかし、そのドロップダウンをクリックすると、以下のように選択されたオプションとして「Choose ..」が表示されます。
どこで間違えたのかわからない。友達を助けてください