Jak mogę uciec przed '
(pojedynczy cytat) w JavaScript?
Oto, gdzie próbuję go użyć:
<input type='text' id='abc' value='hel'lo'>
Wynikiem powyższego kodu jest „hel” wypełnione w polu tekstowym. Próbowałem zamienić „na \”, ale to, co otrzymuję.
<input type='text' id='abc' value='hel\'lo'>
Wynikiem powyższego kodu jest „hel \” wypełnione w polu tekstowym.
Jak mogę skutecznie uniknąć pojedynczych cytatów?
Odpowiedzi:
Możesz użyć encji HTML:
'
dla'
"
dla"
Więcej informacji można znaleźć w odwołaniach do encji znakowych w kodzie HTML .
źródło
"
:"
Możesz użyć
'
(który jest iffy w IE) lub'
(który powinien działać wszędzie). Pełna lista znajduje się w W3C HTML5 Named Character References lub w tabeli encji HTML na WebPlatform.org .źródło
Ponieważ jesteś w kontekście HTML, musisz użyć HTML do reprezentowania tego znaku. W przypadku HTML należy użyć odwołania do znaku numerycznego
'
('
szesnastkowego):źródło
context of html
?&
oznacza początek odwołania do znaku.Przedstaw go jako jednostkę tekstową (ASCII 39):
źródło
Prawdopodobnie najłatwiejszy sposób:
źródło
Możesz spróbować użyć:
‘
źródło
użyj funkcji wbudowanych javascript, escape i unescape
na przykład
Będzie to pomocne, jeśli masz ogromne dane strunowe typu json do wykorzystania w tym atrybucie
źródło
escape
nie jest bezpieczny dla Unicode. Specyfikacja odradza jej stosowanie.