IE8 のドロップダウン ボックスでノックアウト 2.2.0 を使用すると、エラーが発生します。IE 8 では、配列の長さは 1 ではなく 2 として表示されます。IE9 以降およびその他のブラウザでは問題なく動作します。
このフィドルにコードを入れました。
UI コードは次のようになります。
<script>
function EmailDomain(text, value) {
this.DisplayText = text;
this.Value = value;
}
function VM(){
self.EmailDomains = ko.observableArray([
new EmailDomain("aaa.com", "aaa.com"),
]);
self.SelectedEmailDomain = ko.observable(self.EmailDomains()[0]);
}
</script>
<select data-bind="options: EmailDomains, optionsText: 'DisplayText', value: SelectedEmailDomain"></select>