2010-11-15 4 views
0

Mon problème maintenant est que j'ai un morceau de texte dans un appel de fonction à l'intérieur d'un onClick. Je peux jurer que le guillemet double est codé à " mais le tout tombe en panne car il change en quelque sorte de retour à un guillemet normal double." modifications au guillemet double

usShow("LCD TV 0-23" SONY"); 

Je dois ajouter que tout est construit dynamiquement dans JS. Est-ce que JS modifie les caractères encodés dans leur forme originale à la volée, ou y a-t-il quelque chose que je n'ai jamais compris au sujet du codage?

Répondre

2
usShow("LCD TV 0-23\" SONY"); 

Simple, hein? Il y a même une autre solution:

usShow('LCD TV 0-23" SONY'); 
+0

mon problème est que les données ne sont pas cohérentes. parfois je frappe 23 "et parfois 23 ' –

+0

mais pourquoi & # 34, continue à changer pour"? –

+0

'"' est géré au niveau HTML. Fondamentalement, le navigateur convertit ces entités AVANT d'analyser le code JavaScript. Comme je l'ai dit et comme l'a dit Spencer Ruport, vous devriez échapper à vos citations avec un antislash. –

0

Comment cette ligne de code est-elle générée? Je sais dans ASP.Net il y avait (sont?) Certaines fonctions de sortie qui décodent (incorrectement) les caractères codés en HTML. Si vous rencontrez des problèmes, essayez plutôt de sortir ce qui suit:

usShow("LCD TV 0-23\" SONY"); 

Cela devrait être plus facile à produire.

Questions connexes