2012-10-18 12 views
5

Dokonaliśmy aktualizacji z Tridion 5.3 na Tridion 2011 SP1.Dodawanie tagów zamykających w polu RTF

W naszej obecnej zawartości w tak wielu miejscach w dziedzinie RTF używamy elementu html, takiego jak <a name="top" id="top"></a>. Kiedy publikujemy komponent/stronę z tridion anchors <a> znaczniki są konwertowane na samozamykające znaczniki zakotwiczenia <a name="top" id="top" />. Z tego powodu powstaje hiperłącze na całej zawartości pola RTF, ponieważ przeglądarka traktuje ten znacznik jako znacznik początkowy kotwicy <a>. Kiedy sprawdzamy źródło strony w FireFoxie, mówi "Składnia samozamykająca się (" /> ")" używana na niewidocznym elemencie HTML. Ignorowanie ukośników i traktowanie jako znacznika początkowego. Aby to naprawić aktualizujemy istniejącą zawartość do <a name="top" id="top">&nbsp;</a>, działa ona dobrze, ale nie jest dobrym rozwiązaniem. Wszelkie inne pomysły/konfiguracje, aby nie były konwertowane na tagi samozamykające się.

+0

Zostało to już uwzględnione w tym poście: http://stackoverflow.com/q/10537656/1269175 –

Odpowiedz

5

Mam podobne pytanie odnośnie tego here

Pisałem pracę wokół istnieje. Mam nadzieję, że to pomoże.

Nie jestem pewien, jakiego rodzaju szablony używasz, ale generalnie wysyłam moje dane wyjściowe i szukam pustych znaczników za pomocą XSLT i Mediatora XSLT. Kiedy znajduję puste tagi, staram się je konwertować tak, aby zawierały pusty tekst, aby uniknąć problemów w przeglądarkach wyświetlających ostateczną treść.

<div></div> or <div/> 

zostanie zamieniony na

<div> </div> 

Choć pierwsze przykłady są technicznie prawidłowy XML, robią (jak odkryli) złamać kilka przeglądarek.

+0

Korzystamy z szablonów modułowych. Treść RTF jest odczytywana w .Net Assembly (C#) i wyświetlana przy użyciu programu Dreamweaver. – user1453602

+2

Następnie można napisać CheckForEmptyTags() TBB za pomocą C# do parsowania danych wyjściowych i sprawdzić, czy nie ma pustych tagów, jak robię to z moim XSLT –