| Index: lib/html/templates/html/dart2js/impl_SelectElement.darttemplate
|
| diff --git a/lib/html/templates/html/dart2js/impl_SelectElement.darttemplate b/lib/html/templates/html/dart2js/impl_SelectElement.darttemplate
|
| index 59635205dd7ce306ca1326e5ab8fa1a0a17f014f..dd4f05f81e0260f2cdd0cf72870fdbccda7928f0 100644
|
| --- a/lib/html/templates/html/dart2js/impl_SelectElement.darttemplate
|
| +++ b/lib/html/templates/html/dart2js/impl_SelectElement.darttemplate
|
| @@ -5,7 +5,18 @@
|
| class $CLASSNAME$EXTENDS$IMPLEMENTS$NATIVESPEC {
|
| $!MEMBERS
|
|
|
| + // Override default options, since IE returns SelectElement itself and it
|
| + // does not operate as a List.
|
| + List<OptionElement> get options() {
|
| + return this.elements.filter((e) => e is OptionElement);
|
| + }
|
| +
|
| List<OptionElement> get selectedOptions() {
|
| - return this.options.filter((o) => o.selected);
|
| + // IE does not change the selected flag for single-selection items.
|
| + if (this.multiple) {
|
| + return this.options.filter((o) => o.selected);
|
| + } else {
|
| + return [this.options[this.selectedIndex]];
|
| + }
|
| }
|
| }
|
|
|