Je suis en train de traiter xhtml en utilisant javascript. J'obtiens le contenu textuel d'un noeud div en concaténant la valeur nodeValue de tous les noeuds enfants où nodeType == Node.TEXT_NODE.Remplacement de javascript dom texte noeud
La chaîne résultante contient parfois une entité spatiale insécable. Comment est-ce que je remplace ceci avec un caractère d'espace régulier?
Mon div ressemble à ...
<div><b>Expires On</b> Sep 30, 2009 06:30 AM</div>
Les suggestions suivantes sur le web ne fonctionne pas:
var cleanText = text.replace(/^\xa0*([^\xa0]*)\xa0*$/g,"");
var cleanText = replaceHtmlEntities(text);
var replaceHtmlEntites = (function() {
var translate_re = /&(nbsp|amp|quot|lt|gt);/g;
var translate = {
"nbsp": " ",
"amp" : "&",
"quot": "\"",
"lt" : "<",
"gt" : ">"
};
return function(s) {
return (s.replace(translate_re, function(match, entity) {
return translate[entity];
}));
}
})();
suggestions?
"' '&nnbsp;" Vos données ne sont pas le problème ... est-ce? – brianreavis
J'ai mis la faute de frappe dans mon post - Stack Overflow était la conversion de l'entité dans un espace réel dans l'aperçu de la publication si j'ai utilisé – user158678
Hey, cela ressemble à une faute de frappe dans le nom de la fonction. Voir le modifier à ma question. – Kip