Es scheint, dass bei Verwendung der Textbindung von Knockout mehrere Leerzeichen zu einem zusammengefasst werden. Zum Beispiel:
Funktion VM() { this.Notes = ko.observable(); }
var vm = new VM();
ko.applyBindings(vm);
Hier ist ein Fiddle, um dies zu demonstrieren: http://jsfiddle.net/9rtL5/
Ich habe festgestellt, dass in jsfiddle die Leerzeichen in Firefox, Chrome und IE9 komprimiert werden. Seltsamerweise werden sie jedoch in meiner App von IE9 nicht komprimiert, sondern von den anderen.
Mein Verständnis ist, dass Knockout einen HTML-Textknoten verwendet, um den Wert zu rendern. Ich habe diese verwandte Frage dazu gefunden, wie Leerzeichen beim Erstellen eines Textknotens erhalten bleiben:
Sollte Knockout die Umwandlung von Leerzeichen angemessen handhaben? Ich möchte wirklich keinen benutzerdefinierten Bindungshandler dafür verwenden.
Ich bin tatsächlich im Kontext des Anzeigetexts innerhalb eines Select auf dieses Problem gestoßen und habe erst beim Debuggen dieses Problems entdeckt, dass es sich auch auf eine einfache Textbindung bezieht. Ich vermute, dass das Select-Problem dasselbe ist.