2012-03-27 11 views
5

Ho cercato nel web molto e non ho trovato la funzione js che sostituisce xml Special Character con la loro sequenza di escape?
C'è qualcosa del genere?C'è una funzione js che sostituisce xml Special Character con la loro sequenza di escape?

che so di quanto segue:

Special Character Escape Sequence Purpose 
&     &   Ampersand sign 
'     '   Single quote 
"     "   Double quote 
>     >   Greater than 
<     &lt;   Less than 

c'è di più? che dire scrivere valore esadecimale come 0 × 00,
Anche questo è un problema?

+0

possibile duplicato di [? come sfuggire entità XML in javascript] (http://stackoverflow.com/questions/7918868/how-to-escape-xml-entities-in-javascript) – sudhAnsu63

risposta

2

È possibile utilizzare PHP htmlspecialchars da the PHPJS project.

+0

Ho bisogno di javascript, è sul lato client –

+0

@DorCohen Sì. Controlla i link nel mio post. –

+0

Grazie per la risposta, ho usato la soluzione di @Barry Kaye perché funziona meglio per me, se posso scegliere 2 risposte, sceglierei l'1 + –

0

Questi sono gli unici caratteri di cui devi preoccuparti.

In genere si dovrebbe utilizzare un'interfaccia DOM per creare documenti XML, quindi non è necessario preoccuparsi di eseguire manualmente l'escape delle cose. Questo diventa un problema solo se si mischiano insieme le stringhe per costruire l'XML.

9

Ho usato questo:

function htmlSpecialChars(unsafe) { 
    return unsafe 
    .replace(/&/g, "&amp;") 
    .replace(/</g, "&lt;") 
    .replace(/>/g, "&gt;") 
    .replace(/"/g, "&quot;"); 
} 
+1

e non dimenticare .replace (/ '/ g, "'") – Abacus

1

Questo è simile a Can I escape html special chars in javascript?

La risposta accettata c'è questo:

function escapeHtml(unsafe) { 
    return unsafe 
     .replace(/&/g, "&amp;") 
     .replace(/</g, "&lt;") 
     .replace(/>/g, "&gt;") 
     .replace(/"/g, "&quot;") 
     .replace(/'/g, "&#039;"); 
} 

Tuttavia, se stai usando lodash, allora mi piacciono le cs01 rispondere da quel post:

_.escape('fred, barney, & pebbles'); 
// => 'fred, barney, &amp; pebbles' 
Problemi correlati