<select>
要素からの選択をクリアする必要があります。Knockoutjs がコンボボックスで選択された値をクリアするなどの投稿を既に読み、受け入れられた回答を試しましたが、それらの解決策は機能していないようです(回答が受け入れられてから Knockout 2 で何かが変更されたかどうかわかりませんか?) .
ビューモデルの例を次に示します。
var ClearSelectionViewModel = function () {
var self = this;
self.station = ko.observable();
self.selectedStation = ko.observable();
self.selectedStation.subscribe(function (value) {
self.station(value);
});
self.stations = ko.observableArray(['CLT', 'PHL', 'PHX', 'PIT']);
self.clearSelectedStation = function () {
self.selectedStation(null);
};
};
ko.applyBindings(new ClearSelectionViewModel());
がclearSelectedStation
呼び出されると、バインドされたビュー モデル プロパティを に設定する必要があります。これは、バインドされた要素が空白で表示され、オプションのリストが展開されて強調表示された項目が表示null
されないことによって、UI に反映される必要があります。ただし、バインドされた値のプロパティ ( ) をオプションの配列 ( ) にないもの<select>
に設定しようとすると、バインディングが無視されるように見えることに気付きました。selectedStation
stations
このフィドルは、私が話していることを示しています: http://jsfiddle.net/sellmeadog/Su8Zq/1/
必要がなければ、オプション配列を空白の値で「汚染」したくありません。リンクされた投稿の解決策を機能させる方法を知りたいです。