2010-11-26 4 views
3

Je ne sais pas pourquoi sur la terre jquery html() fait cela, mais après je faisjquery html() décode les entités html par défaut?

$('html').html() 

i get "& copie" automatiquement converti ©

de toute façon pour éviter cela? J'ai besoin de vider le html de la page en utilisant javascript et n'ai pas besoin de ces conversions inutiles qui bousillent le html.

Répondre

4

Ce n'est vraiment pas le jQuery, ou même JavaScript pour cela.

Le navigateur tiendra sa propre représentation normalisée du DOM sous-jacent. Il ressemblera beaucoup au document lui-même, mais le décodage des caractères (comme ci-dessus) sera préservé.

avoir une lecture de ce qui suit:

http://www.brainjar.com/dhtml/intro/

http://bytes.com/topic/javascript/answers/146257-body-innerhtml-issue

Je crains qu'il n'y a pas moyen de contourner cela autant que je sache.

+0

; (drôle que firebug le fasse bien (par exemple sans le décoder) connaissez-vous une autre bibliothèque/ – Ricardo

+0

Les navigateurs ne gardent pas la source d'origine, vous devrez utiliser XHR ou similaire pour re-demander la page à partir du serveur. – Quentin

0

jQuery ne devrait pas. vérifiez ce que vous obtenez réellement dans firebug FF.

console.log($('html').html()); 
+0

il ne devrait pas mais c'est. vérifié en utilisant le journal, le dumping pour déposer, etc. – Ricardo

+0

vous pouvez déposer un rapport de bug. http://bugs.jquery.com/, mais je suppose que James Wiseman a un point ici. –

+0

jetez un oeil à cet article. http://stackoverflow.com/questions/4162270/dom-exception-when-assigning-html-entities-to-innerhtml –

Questions connexes