Ich versuche Javascript in Rich Text Editor-Eingaben in meinem Umbraco-Setup zuzulassen. Ich benutze Umbraco 7.2. Ich habe das Skript-Tag in tinyMceConfig.config aktiviert, sodass der Editor meine Skript-Tags nicht mehr isst. Das Problem ist jetzt, dass mein Inhalt abgeschnitten ist.
In meiner RTE stelle ich zum Beispiel:
%Vor%Dies wird von TinyMCE zu:
umgewandelt %Vor%Das Problem ist, dass der Wert von Umbraco.Field ("myRte") endet:
%Vor%Es scheint mit CDATA verwandt zu sein. Hat jemand anderes Javascript in RTE, das in Umbraco 7 funktioniert?
Eine mögliche Problemumgehung wäre die Erstellung eines Makros, mit dem Sie ein Skript in die Laufzeitumgebung einfügen können. Das Makro hätte einen einzelnen Textarea-Parameter, in den Sie Ihr Skript-Tag einfügen würden, und Sie würden den Parameterwert einfach als Raw-HTML ausgeben. Es kann jedoch sinnvoll sein, vor dem Rendern auf der Seite zu überprüfen, ob die Eingabe korrekt ist.
Wenn Sie ein Rasiermesser-Makro verwenden, könnte die Teilansicht so aussehen:
%Vor%Wo ValidateHtml eine Erweiterungsmethode für den Mvc HtmlHelper ist:
%Vor%Die Hilfsmethode verwendet das Html Agility Pack und ich habe den Code aus einer Antwort an eine andere SO-Frage .
Ich habe dies in einer Umbraco 7.2.1-Installation getestet und es funktioniert auch, wenn Sie die Option "Im Rich-Text-Editor rendern und das Raster rendern" auswählen.
Meine Lösung ist nicht schreiben direkt Skript im Editor, schreiben Sie es in eine test.js-Datei nach dem
%Vor%In tiniMceConfig.config Datei (Konfigurationsordner) validElements -Tag, fügen Sie dieses
hinzu %Vor%so wird es so aussehen
%Vor%Testen und arbeiten Sie mit Umbraco 4.7.x. Ich bin kein Test auf Umbraco 7