Hoe kan ik een '
(enkele offerte) in HTML ontsnappen?
Hier probeer ik het te gebruiken:
<input type='text' id='abc' value='hel'lo'>
Het resultaat voor de bovenstaande code is “Hel” gevuld in het tekstvak. Ik heb geprobeerd '
met \'
te vervangen, maar dit wat ik krijg.
<input type='text' id='abc' value='hel\'lo'>
Het resultaat voor de bovenstaande code is “Hel” gevuld in het tekstvak.
Hoe kan ik met succes aan de afzonderlijke aanhalingstekens ontsnappen?
Antwoord 1, Autoriteit 100%
U kunt HTML-entiteiten gebruiken:
'
VOOR'
"
VOOR"
- …
Voor meer kunt u een kijkje nemen op karakterentiteitsreferenties in HTML .
Antwoord 2, Autoriteit 17%
U kunt '
(dat is iffy in IE) of '
(die overal moet werken). Voor een uitgebreide lijst, zie de W3C HTML5 genaamd Character Referenties of de HTML-entiteiten tabel op webplatform.org .
Antwoord 3, Autoriteit 2%
Omdat u zich in de context van HTML bevindt, moet u HTML gebruiken om dat teken weer te geven. En voor HTML moet je een numerieke tekenreferentiegebruiken '
('
hexadecimaal):
<input type='text' id='abc' value='hel'lo'>
Antwoord 4, autoriteit 2%
Waarschijnlijk de gemakkelijkste manier:
<input type='text' id='abc' value="hel'lo">
Antwoord 5, autoriteit 2%
Representeer het als een tekstentiteit (ASCII 39):
<input type='text' id='abc' value='hel'lo'>
Antwoord 6
Als je om de een of andere reden niet aan het apostrofteken kunt ontsnappen en je het niet kunt veranderen in een HTML-entiteit (zoals in mijn geval was voor een specifieke Vue.jseigenschap) kunt u vervangen gebruiken om het te veranderen in een ander apostrofteken uit de UTF-8-tekenset, bijvoorbeeld:
ʼ - U+02BC
’ - U+2019
Antwoord 7
Je zou kunnen proberen: ‘
Antwoord 8
gebruik javascript ingebouwde functies escape en unescape
bijvoorbeeld
var escapedData = escape("hel'lo");
output = "%27hel%27lo%27" which can be used in the attribute.
again to read the value from the attr
var unescapedData = unescape("%27hel%27lo%27")
output = "'hel'lo'"
Dit is handig als je enorme json stringify-gegevens hebt die in het attribuut moeten worden gebruikt