knockout.js: Die Verwendung einer containerlosen foreach für eine Auswahl schlägt in Internet Explorer 8 fehl

8

In RP Niemeyers Artikel Knockout.js Leistung Erfüllt # 3 - Alle Bindungen Feuer zusammen , Ein Ansatz zum Erstellen einer Dropdown-Liste wird bereitgestellt:

%Vor%

Dieser Code befindet sich auch in einem Artikel aus dem Artikel.

Ссылка

Wenn ich jedoch diese Methode zum Erstellen einer Auswahl in einem Projekt verwendet habe, es funktionierte einwandfrei, bis ich im Internet Explorer 8 getestet habe. IE8 fehlgeschlagen und war "nicht in der Lage, Bindings zu analysieren".

Tatsächlich führt das Ausführen der Geige aus dem Artikel in IE8 ebenfalls zu einem Fehler. Gibt es eine Möglichkeit, das select in IE8 zu erstellen (ich nehme IE8 oder weniger an) knockout's foreach verwenden?

    
mg1075 30.07.2012, 14:21
quelle

2 Antworten

8

Ja, das ist definitiv ein Problem. Ich werde die Post aktualisieren müssen. Der IE streift Kommentare aus der Auswahl.

Hier ist ein ähnliches Problem auf github: Ссылка

Eine Lösung ist die Verwendung von Michael Bests repeat -Bindung: Ссылка .

Eines der Dinge, die Sie tun können, ist, ein einzelnes Element mehrmals mit einem anderen Kontext zu wiederholen. In diesem Fall würde es sich ähnlich wie in der containerlosen Syntax verhalten, nur ohne die Kommentare.

Beispiel mit Wiederholung: Ссылка

Sie können auch die andere Technik aus dem Artikel ( isolatedOptions ) verwenden, es sei denn, Sie benötigen mehr Kontrolle über Ihre Optionselemente.

    
RP Niemeyer 30.07.2012, 14:40
quelle
3

Obwohl dies ein Problem ist, besteht hier keine Notwendigkeit, eine "foreach" zu verwenden. Knockout beinhaltet die 'Optionen' -Bindung für eine Auswahl, die ziemlich glücklich in IE8 funktioniert.

Bitte lesen Sie die Dokumentation hier: Ссылка

%Vor%

Kann geändert werden zu:

%Vor%

Hoffe, das hilft.

    
sebpinski 03.05.2013 14:49
quelle