selectedValue
「ハム」の値を持つ選択のプリセット値があります。「スパム」、「ハム」、「チーズ」の 3 つのオプションがあります。
ビューモデルが適用されると、「ハム」の値が選択されますが、その値がselectedValue
失われるため、実際には「ハム」は選択されているように見えますが、選択されていません。
selectValue
初期値を保持できるようにするには、何を変更する必要がありますか? これがjsfiddleです
HTML
<select data-bind="value:selectedValue">
<option data-bind="repeat: values"
data-repeat-bind="value: $item(), text: $item()">
</option>
</select>
<br>selectedValue: <span data-bind="text:selectedValue"></span>
ビューモデル
var viewModel = function () {
this.selectedValue = ko.observable("ham"); //initial value has been chosen.
this.values = ko.observableArray(["spam", 'ham', 'cheese']);
this.showMeSelectedValue = function(){alert(this.selectedValue())};
};
ko.applyBindings(new viewModel());
注: https://github.com/mbest/knockout-repeat の繰り返しバインディングを使用しています。通常は通常のオプション バインディングを使用しますが、select ラベルが機能するにはバインディングを繰り返す必要があります。