J'ai un fichier JS avec du XML, où le XML est censé être converti en un mot par le serveur.
EG P>
ip = """<lang:cond><lang:when test="$(VAR{'ip_addr'})">$(VAR{'ip_addr'})</lang:when></lang:cond>"""
5 Réponses :
en JavaScript, vous pouvez échapper à l'un ou l'autre type de citation avec un Par exemple: p> en particulier, votre bloc de code JavaScript doit être converti en: p> en général, je préfère toujours échapper aux guillemets au lieu d'avoir à basculer constamment des types de devis, en fonction du type de guillemets. utilisé à l'intérieur. p> p> \ code>.
Malheureusement, cela ne le fait pas, car le XML pour une raison quelconque ne fonctionne pas avec des citations évasées.
@Jeff - Lorsque le contenu est lu de la chaîne par JavaScript, les devis échappés ne seront pas décernés et le XML ne sera plus des guillemets évasés.
Vous ne pouvez pas créer une chaîne sans utiliser de citation unique ou double, car même appeler l'objet de prototype code> () code> nécessite toujours que vous transmettez la chaîne. p>
Inside XML Vous utiliseriez CDATA, mais à l'intérieur de JS, vous devez simplement échapper au '\ "\" \ "' code> " \ '"de manière appropriée" code> < / p>
Bien sûr, vous pouvez créer une chaîne sans utiliser de citations. Je ne dis pas que ce serait du tout utile pour ce problème, mais toujours string.fromcharcode (72,69,76,76,79) code> produit la chaîne Bonjour code>.
Aha, idée fantastique. Maintenant que vous mentionnez ce vecteur, je parie que vous pourriez vous pouvez quelques techniques d'obfuscription JavaScript pour le faire.
J'ai dû créer des chaînes sans citations pour un projet également. Nous livrions un client exécutable JavaScript au navigateur pour un site Web interne. Les bandes d'extrémité de réception double et des guillemets simples lorsqu'ils sont affichés. Une façon dont j'ai trouvé des devis sur des citations consiste à déclarer ma chaîne comme une expression régulière.
Wow. C'est une astuce soignée. Cela m'a aidé à résoudre un problème où je devais représenter "une chaîne dans une chaîne, dans une chaîne, dans une chaîne". :) J'utilisais PHP pour renvoyer une chaîne JSON (1), qui comprenait des balises HTML CODE> (2), dont une nécessaire pour inclure un onclick = "" / Code> Attribut (3) qui a appelé un gestionnaire de méthode JavaScript nécessitant un paramètre de chaîne (4). Je manquais de façons d'intégrer des citations et pourtant ne pas casser l'analyseur JS, lorsque cette astuce intelligente m'a donné une troisième voie représentant tout. Radical, homme. Merci!
Merci! C'était tellement utile que vous ne pouvez même pas imaginer.
/ ceci ne contient aucun devis / .Source code>
Utilisation de String fort> prototype: en utilisant string.fromcharcode strong> p> Générez des codes de caractère pour cela: p>
Je cherchais une solution au même problème. Quelqu'un a suggéré de regarder https://developer.mozilla.org/en/docs / Web / javascript / référence / template_strings qui s'est avéré utile. Après avoir lu environ la moitié de l'article, il a déclaré que vous pouvez créer des chaînes avec le caractère de la ticelle arrière. (`)
Essayez ceci :) p>
p>
<div id="test" style="font-size:3em;"></div>
Pourquoi ne récupérez-vous pas le XML séparément? De cette façon, vous n'avez pas besoin de vous embêter avec des citations.
La chaîne ne peut pas être créée sans citations. Alternative Way de créer une chaîne dans JavaScript est Var Str = nouvelle chaîne ("OK"), SH a maintenant la valeur "OK".
@Heera - cordes certainement peut créer i> être créé sans guillemets.
string.fromcharcode (72,69,76,76,79) code> produit la chaîneBonjour code>. (Je sais que ce n'est pas du tout utile dans ce cas, mais de toute façon ...)Bien, bonne réponse et appréciez-la, mais comme vous l'avez dit, pas utile dans ce cas.