Autor | Zpráva | ||
---|---|---|---|
Pietro Profil |
#1 · Zasláno: 6. 9. 2008, 12:52:57 · Upravil/a: Pietro
Dobrý den,
narazil jsem na problém, kdy se mi entity v prohlížečích vykreslují, i když by neměly. Zkuste si třeba napsat do stránky & (bez středníku!). Zobrazí se jako ampersand. ® taky. Narazil jsem na to náhodou, ale docela mne to štve. Dělám na aplikaci, která funguje na AJAXu, a dělám permalinky. Všude to funguje jak má, jenom blbej explorer mi při rozdělení GET do pole jiného pole píše ®, jelikož mám ve formuláří select region. Achjo, budu to muset přejmenovat, jiný řešení jsem nenalezl. (Ano, & nemůžu použít, je to v JS) |
||
Měsíček Profil |
#2 · Zasláno: 6. 9. 2008, 12:58:56
Ano, protože středník na konci entity dává na vědomí, že další znaky nemají být použity jako název entity, ale jako další úsek textu.
Proto funguje i & |
||
Chamurappi Profil |
#3 · Zasláno: 6. 9. 2008, 15:01:22
Reaguji na Pietro:
„Zkuste si třeba napsat do stránky & (bez středníku!). Zobrazí se jako ampersand.“ Středník není povinný. Je to tak, jak píše Měsíček. Prohlížeč čte znak po znaku název entity a jakmile narazí na středník nebo na znak nedovolený v názvu entity, považuje entitu za kompletní a zpracuje ji. V Exploreru je pár odchylek od tohoto pravidla, na jednu jsi narazil se svým „®ion“em. „(Ano, & nemůžu použít, je to v JS)“ Můžeš použít „&“, je to v HTML. Kdyby to totiž skutečně bylo interpretované jen v JS, tak se ti nepřekládají entity. Předpokládám, že adresu dáváš do nějakého innerHTML, kde pochopitelně platí všechna pravidla pro rozebírání HTML kódu — proto se interpretuje „®“, a proto se bude interpretovat i „&“. |
||
Časová prodleva: 16 let
|
0