Angular.js / jQuery HTML-String-Analyse in 1.9.1 vs. 1.8.3

8

Versuche, angular.element(stringWithHtmlStructure); causes zu machen

%Vor%

in jquery 1.9.1, aber es funktioniert in jquery 1.8.3

Ist es ein Problem oder eine Funktion? Sicherheit vielleicht? Wie gehe ich damit um?

1.8.3 Beispiel Ссылка 1.9.1 Beispiel Ссылка

Es ist definitiv kein Problem mit irgendeinem angularem Zeug, denn $(stringWithHtmlStructure) scheitert genau so, wie Sie hier sehen können Ссылка

    
foxx 20.04.2013, 15:40
quelle

2 Antworten

8

Das Problem ist definitiv mit jquery 1.9.1

  

HTML-Strings mit führenden Leerzeichen: jQuery 1.9 schränkt die Strings ein   verarbeitet von $ () aus Sicherheitsgründen. Obwohl wir Ihnen empfehlen, zu verwenden   $ .parseHTML () um beliebige HTML-ähnliche Vorlagen, die 1.1.0, zu verarbeiten   Version des Migrate-Plugins stellt das alte Verhalten wieder her.

Weg, um damit umzugehen ist jede Art von Trimmen-Funktion, ob es jquery ist $ .trim oder Unterstreichung oder sogar Ihre eigenen.

Beachten Sie, dass dieses Problem nur auftritt, wenn Sie versuchen, Vorlage aus $ templateCache zu verwenden, wenn Sie Vorlage oder templateUrl attr auf die Direktive verwenden, funktioniert es gut, ich schätze eckig intern schneidet es.

    
foxx 20.04.2013, 15:53
quelle
3

Wenn Ihre Zeichenfolge führende Leerzeichen enthält, sollten Sie sie entfernen.

Das sollte funktionieren:

%Vor%     
Kenneth 20.04.2013 15:53
quelle