Bonjour
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bouré de chsoes come : <br />, plus des
caractères html tordus.
Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
Merci beaucoup pour vos réponses.
Bonjour
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bouré de chsoes come : <br />, plus des
caractères html tordus.
Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
Merci beaucoup pour vos réponses.
Bonjour
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bouré de chsoes come : <br />, plus des
caractères html tordus.
Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
Merci beaucoup pour vos réponses.
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bourré de choses comme : <br />,
plus des caractères html tordus.
Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
Merci beaucoup pour vos réponses.
Jean François Ortolo
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bourré de choses comme : <br />,
plus des caractères html tordus.
Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
Merci beaucoup pour vos réponses.
Jean François Ortolo
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bourré de choses comme : <br />,
plus des caractères html tordus.
Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
Merci beaucoup pour vos réponses.
Jean François Ortolo
Le 13/02/2015 12:58, Jean Francois Ortolo a écrit :
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
C'est-à-dire convertir par exemple « œ » en « ½ » ? À vrai dire je
ne sais pas bien ce que tu entends par « caractères html ».Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bourré de choses comme : <br />,
C'est-à-dire que le code html contient un truc du genre « <br /> »
ce qui affiche « <br /> », alors que tu voudrais qu'il contienne
« <br /> » et affiche un saut de ligne ?
Ça pourrait être un bug de la page html elle-même, difficile à corriger
en JavaScript sans introduire d'autres bugs ailleurs.plus des caractères html tordus.
Il existe mille et une façons d'avoir un résultat « tordu ». Si tu ne
dis pas comment il est tordu, on ne pourra pas te dire comment le
remettre droit.Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
C'est le code php que tu ne peux pas modifier, ou bien le contenu de la
table mysql ? S'il y a un bug dans l'un des deux, tu peux essayer de le
contourner en changeant l'autre, mais en principe il vaudrait mieux
corriger le bug là où il se trouve.Merci beaucoup pour vos réponses.
Jean François Ortolo
À tout hasard, bien que je ne suis pas sûr que ça soit utile tant que
je n'ai pas compris la question, voici une page permettant des tas de
conversions de caractères entre différents codages :
<http://hapax.qc.ca/conversion.fr.html>.
Le 13/02/2015 12:58, Jean Francois Ortolo a écrit :
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
C'est-à-dire convertir par exemple « œ » en « ½ » ? À vrai dire je
ne sais pas bien ce que tu entends par « caractères html ».
Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bourré de choses comme : <br />,
C'est-à-dire que le code html contient un truc du genre « <br /> »
ce qui affiche « <br /> », alors que tu voudrais qu'il contienne
« <br /> » et affiche un saut de ligne ?
Ça pourrait être un bug de la page html elle-même, difficile à corriger
en JavaScript sans introduire d'autres bugs ailleurs.
plus des caractères html tordus.
Il existe mille et une façons d'avoir un résultat « tordu ». Si tu ne
dis pas comment il est tordu, on ne pourra pas te dire comment le
remettre droit.
Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
C'est le code php que tu ne peux pas modifier, ou bien le contenu de la
table mysql ? S'il y a un bug dans l'un des deux, tu peux essayer de le
contourner en changeant l'autre, mais en principe il vaudrait mieux
corriger le bug là où il se trouve.
Merci beaucoup pour vos réponses.
Jean François Ortolo
À tout hasard, bien que je ne suis pas sûr que ça soit utile tant que
je n'ai pas compris la question, voici une page permettant des tas de
conversions de caractères entre différents codages :
<http://hapax.qc.ca/conversion.fr.html>.
Le 13/02/2015 12:58, Jean Francois Ortolo a écrit :
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
C'est-à-dire convertir par exemple « œ » en « ½ » ? À vrai dire je
ne sais pas bien ce que tu entends par « caractères html ».Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bourré de choses comme : <br />,
C'est-à-dire que le code html contient un truc du genre « <br /> »
ce qui affiche « <br /> », alors que tu voudrais qu'il contienne
« <br /> » et affiche un saut de ligne ?
Ça pourrait être un bug de la page html elle-même, difficile à corriger
en JavaScript sans introduire d'autres bugs ailleurs.plus des caractères html tordus.
Il existe mille et une façons d'avoir un résultat « tordu ». Si tu ne
dis pas comment il est tordu, on ne pourra pas te dire comment le
remettre droit.Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
C'est le code php que tu ne peux pas modifier, ou bien le contenu de la
table mysql ? S'il y a un bug dans l'un des deux, tu peux essayer de le
contourner en changeant l'autre, mais en principe il vaudrait mieux
corriger le bug là où il se trouve.Merci beaucoup pour vos réponses.
Jean François Ortolo
À tout hasard, bien que je ne suis pas sûr que ça soit utile tant que
je n'ai pas compris la question, voici une page permettant des tas de
conversions de caractères entre différents codages :
<http://hapax.qc.ca/conversion.fr.html>.
Le 13/02/2015 14:46, Olivier Miakinen a écrit :Le 13/02/2015 12:58, Jean Francois Ortolo a écrit :
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
C'est-à-dire convertir par exemple « œ » en « œ » ? À vrai dire je
ne sais pas bien ce que tu entends par « caractères html ».Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bourré de choses comme : <br />,
C'est-à-dire que le code html contient un truc du genre « <br /> »
ce qui affiche « <br /> », alors que tu voudrais qu'il contienne
« <br /> » et affiche un saut de ligne ?
Ça pourrait être un bug de la page html elle-même, difficile à corriger
en JavaScript sans introduire d'autres bugs ailleurs.plus des caractères html tordus.
Il existe mille et une façons d'avoir un résultat « tordu ». Si tu ne
dis pas comment il est tordu, on ne pourra pas te dire comment le
remettre droit.Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
C'est le code php que tu ne peux pas modifier, ou bien le contenu de la
table mysql ? S'il y a un bug dans l'un des deux, tu peux essayer de le
contourner en changeant l'autre, mais en principe il vaudrait mieux
corriger le bug là où il se trouve.Merci beaucoup pour vos réponses.
Jean François Ortolo
À tout hasard, bien que je ne suis pas sûr que ça soit utile tant que
je n'ai pas compris la question, voici une page permettant des tas de
conversions de caractères entre différents codages :
<http://hapax.qc.ca/conversion.fr.html>.
Bonjour Monsieur
Par exemple, j'obtiens ( avec shr.responseText ), une chaîne de
caractères, contenant uniquement ces caractères html ( entre autres
caractères normaux non html ) :
é
<br />
-
%
<
=
Ce sont ( je crois ), les seuls caractères html susceptibles de se
présenter, vu que c'est moi qui les met ( automatiquement avant
l'affichage du tableau ) dans cette table mysql.
Les scripts sont écrits en utf8, le charset du site est en utf-8, je
peux faire une fonction ad hoc genre : html_to_text(str) :
[code]
function html_to_text(str)
{
var str2 = str.replace(" ", " ");
var str3 = str2.replace("é", "é"); ( en utf8 )
str2 = str3.replace("<br />", "n");
str3 = str2.replace("-", '-');
str2 = str3.replace("%", '%');
str3 = str2.replace("<", '<');
str2 = str3.replace("=", '=');
return (str2);
}
[/code]
Merci de me dire si c'est correct.
Le 13/02/2015 14:46, Olivier Miakinen a écrit :
Le 13/02/2015 12:58, Jean Francois Ortolo a écrit :
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
C'est-à-dire convertir par exemple « œ » en « œ » ? À vrai dire je
ne sais pas bien ce que tu entends par « caractères html ».
Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bourré de choses comme : <br />,
C'est-à-dire que le code html contient un truc du genre « <br /> »
ce qui affiche « <br /> », alors que tu voudrais qu'il contienne
« <br /> » et affiche un saut de ligne ?
Ça pourrait être un bug de la page html elle-même, difficile à corriger
en JavaScript sans introduire d'autres bugs ailleurs.
plus des caractères html tordus.
Il existe mille et une façons d'avoir un résultat « tordu ». Si tu ne
dis pas comment il est tordu, on ne pourra pas te dire comment le
remettre droit.
Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
C'est le code php que tu ne peux pas modifier, ou bien le contenu de la
table mysql ? S'il y a un bug dans l'un des deux, tu peux essayer de le
contourner en changeant l'autre, mais en principe il vaudrait mieux
corriger le bug là où il se trouve.
Merci beaucoup pour vos réponses.
Jean François Ortolo
À tout hasard, bien que je ne suis pas sûr que ça soit utile tant que
je n'ai pas compris la question, voici une page permettant des tas de
conversions de caractères entre différents codages :
<http://hapax.qc.ca/conversion.fr.html>.
Bonjour Monsieur
Par exemple, j'obtiens ( avec shr.responseText ), une chaîne de
caractères, contenant uniquement ces caractères html ( entre autres
caractères normaux non html ) :
é
<br />
-
%
<
=
Ce sont ( je crois ), les seuls caractères html susceptibles de se
présenter, vu que c'est moi qui les met ( automatiquement avant
l'affichage du tableau ) dans cette table mysql.
Les scripts sont écrits en utf8, le charset du site est en utf-8, je
peux faire une fonction ad hoc genre : html_to_text(str) :
[code]
function html_to_text(str)
{
var str2 = str.replace(" ", " ");
var str3 = str2.replace("é", "é"); ( en utf8 )
str2 = str3.replace("<br />", "n");
str3 = str2.replace("-", '-');
str2 = str3.replace("%", '%');
str3 = str2.replace("<", '<');
str2 = str3.replace("=", '=');
return (str2);
}
[/code]
Merci de me dire si c'est correct.
Le 13/02/2015 14:46, Olivier Miakinen a écrit :Le 13/02/2015 12:58, Jean Francois Ortolo a écrit :
Je sèche sur un problème en javascript :
Pour une string, comment convertir des caractères html en caractères
iso ( ou bien utf8 éventuellement ) ?
C'est-à-dire convertir par exemple « œ » en « œ » ? À vrai dire je
ne sais pas bien ce que tu entends par « caractères html ».Après correction de mes insertCell et autres Row, j'obtiens le bon
tableau de stats , mais bourré de choses comme : <br />,
C'est-à-dire que le code html contient un truc du genre « <br /> »
ce qui affiche « <br /> », alors que tu voudrais qu'il contienne
« <br /> » et affiche un saut de ligne ?
Ça pourrait être un bug de la page html elle-même, difficile à corriger
en JavaScript sans introduire d'autres bugs ailleurs.plus des caractères html tordus.
Il existe mille et une façons d'avoir un résultat « tordu ». Si tu ne
dis pas comment il est tordu, on ne pourra pas te dire comment le
remettre droit.Je peux difficilement corriger les données en amont ( en php ), car
elles sont enregistrées dans une table mysql.
C'est le code php que tu ne peux pas modifier, ou bien le contenu de la
table mysql ? S'il y a un bug dans l'un des deux, tu peux essayer de le
contourner en changeant l'autre, mais en principe il vaudrait mieux
corriger le bug là où il se trouve.Merci beaucoup pour vos réponses.
Jean François Ortolo
À tout hasard, bien que je ne suis pas sûr que ça soit utile tant que
je n'ai pas compris la question, voici une page permettant des tas de
conversions de caractères entre différents codages :
<http://hapax.qc.ca/conversion.fr.html>.
Bonjour Monsieur
Par exemple, j'obtiens ( avec shr.responseText ), une chaîne de
caractères, contenant uniquement ces caractères html ( entre autres
caractères normaux non html ) :
é
<br />
-
%
<
=
Ce sont ( je crois ), les seuls caractères html susceptibles de se
présenter, vu que c'est moi qui les met ( automatiquement avant
l'affichage du tableau ) dans cette table mysql.
Les scripts sont écrits en utf8, le charset du site est en utf-8, je
peux faire une fonction ad hoc genre : html_to_text(str) :
[code]
function html_to_text(str)
{
var str2 = str.replace(" ", " ");
var str3 = str2.replace("é", "é"); ( en utf8 )
str2 = str3.replace("<br />", "n");
str3 = str2.replace("-", '-');
str2 = str3.replace("%", '%');
str3 = str2.replace("<", '<');
str2 = str3.replace("=", '=');
return (str2);
}
[/code]
Merci de me dire si c'est correct.
ou plus simplement ?
str = decodeURI(s
ou plus simplement ?
str = decodeURI(s
ou plus simplement ?
str = decodeURI(s
Le 13/02/15 16:46, SAM a écrit :
ou plus simplement ?
str = decodeURI(s
Il semblerait que jQuery ait une fonction toute faite pour décoder les
html-entities
Cordialement,
Le 13/02/15 16:46, SAM a écrit :
ou plus simplement ?
str = decodeURI(s
Il semblerait que jQuery ait une fonction toute faite pour décoder les
html-entities
Cordialement,
Le 13/02/15 16:46, SAM a écrit :
ou plus simplement ?
str = decodeURI(s
Il semblerait que jQuery ait une fonction toute faite pour décoder les
html-entities
Cordialement,
str2 = unescape(str3.replace(/<br />/g, ' '));
return str2;
}
str2 = unescape(str3.replace(/<br />/g, ' '));
return str2;
}
str2 = unescape(str3.replace(/<br />/g, ' '));
return str2;
}
Le 13/02/15 17:32, Jean Francois Ortolo a écrit :
str2 = unescape(str3.replace(/<br />/g, ' '));
Il n'y a plus rien à "unescaper" ici, non ?
str2 = str3.replace(/<br />/g, 'n');return str2;
}
Sinon j'ai trouvé un convertisseur qui semble assez exhaustif :
<https://mothereff.in/html-entities>
code JS : 40 ko !!!
Cordialement,
Le 13/02/15 17:32, Jean Francois Ortolo a écrit :
str2 = unescape(str3.replace(/<br />/g, ' '));
Il n'y a plus rien à "unescaper" ici, non ?
str2 = str3.replace(/<br />/g, 'n');
return str2;
}
Sinon j'ai trouvé un convertisseur qui semble assez exhaustif :
<https://mothereff.in/html-entities>
code JS : 40 ko !!!
Cordialement,
Le 13/02/15 17:32, Jean Francois Ortolo a écrit :
str2 = unescape(str3.replace(/<br />/g, ' '));
Il n'y a plus rien à "unescaper" ici, non ?
str2 = str3.replace(/<br />/g, 'n');return str2;
}
Sinon j'ai trouvé un convertisseur qui semble assez exhaustif :
<https://mothereff.in/html-entities>
code JS : 40 ko !!!
Cordialement,
function html_to_text(str)
{
var str2 = unescape(str.replace(/ /g, ' '));
var str2 = unescape(str2.replace(/é/g, 'é'));
str2 = unescape(str2.replace(/%/g, '%'));
str2 = unescape(str2.replace(/</g, '<'));
str2 = unescape(str2.replace(/=/g, '='));
str2 = unescape(str2.replace(/-/g, '-'));
str2 = unescape(str2.replace(/<br />/g, ' '));
return str2;
}
Cà marche correctement.
Hélas, quand j'essaye de mettre ( dernière ligne ) :
str2 = unescape(str2.replace(/<br />/g, 'n'));
Là, le tableau ne s'affiche pas, manifestement le script crashe.
Je fais ceci avant chaque affectation de ce type de chaque elem de
texte que j'affecte à mes createTextNode(elem); :
elem = htm_to_text(elem);
Je ne sais pas, il semble qu'il ne supporte pas un saut de ligne lors
de l'affectation. ( sous toutes réserves ).
function html_to_text(str)
{
var str2 = unescape(str.replace(/ /g, ' '));
var str2 = unescape(str2.replace(/é/g, 'é'));
str2 = unescape(str2.replace(/%/g, '%'));
str2 = unescape(str2.replace(/</g, '<'));
str2 = unescape(str2.replace(/=/g, '='));
str2 = unescape(str2.replace(/-/g, '-'));
str2 = unescape(str2.replace(/<br />/g, ' '));
return str2;
}
Cà marche correctement.
Hélas, quand j'essaye de mettre ( dernière ligne ) :
str2 = unescape(str2.replace(/<br />/g, 'n'));
Là, le tableau ne s'affiche pas, manifestement le script crashe.
Je fais ceci avant chaque affectation de ce type de chaque elem de
texte que j'affecte à mes createTextNode(elem); :
elem = htm_to_text(elem);
Je ne sais pas, il semble qu'il ne supporte pas un saut de ligne lors
de l'affectation. ( sous toutes réserves ).
function html_to_text(str)
{
var str2 = unescape(str.replace(/ /g, ' '));
var str2 = unescape(str2.replace(/é/g, 'é'));
str2 = unescape(str2.replace(/%/g, '%'));
str2 = unescape(str2.replace(/</g, '<'));
str2 = unescape(str2.replace(/=/g, '='));
str2 = unescape(str2.replace(/-/g, '-'));
str2 = unescape(str2.replace(/<br />/g, ' '));
return str2;
}
Cà marche correctement.
Hélas, quand j'essaye de mettre ( dernière ligne ) :
str2 = unescape(str2.replace(/<br />/g, 'n'));
Là, le tableau ne s'affiche pas, manifestement le script crashe.
Je fais ceci avant chaque affectation de ce type de chaque elem de
texte que j'affecte à mes createTextNode(elem); :
elem = htm_to_text(elem);
Je ne sais pas, il semble qu'il ne supporte pas un saut de ligne lors
de l'affectation. ( sous toutes réserves ).
Le 13/02/15 17:32, Jean Francois Ortolo a écrit :
function html_to_text(str)
{
var str2 = unescape(str.replace(/ /g, ' '));
var str2 = unescape(str2.replace(/é/g, 'é'));
str2 = unescape(str2.replace(/%/g, '%'));
str2 = unescape(str2.replace(/</g, '<'));
str2 = unescape(str2.replace(/=/g, '='));
str2 = unescape(str2.replace(/-/g, '-'));
str2 = unescape(str2.replace(/<br />/g, ' '));
return str2;
}
Cà marche correctement.
unescape ici ne sert à rien, non ?Hélas, quand j'essaye de mettre ( dernière ligne ) :
str2 = unescape(str2.replace(/<br />/g, 'n'));
chez moi, cette ligne utilisée seule fonctionne
var str2 = 'bla<br />ble<br />blu'
alert(str2.replace(/<br />/g, 'n'));
ou :
alert(unescape(str2.replace(/<br />/g, 'n')));
hop !
bla
ble
bluLà, le tableau ne s'affiche pas, manifestement le script crashe.
Je fais ceci avant chaque affectation de ce type de chaque elem de
texte que j'affecte à mes createTextNode(elem); :
elem = htm_to_text(elem);
Je ne sais pas, il semble qu'il ne supporte pas un saut de ligne lors
de l'affectation. ( sous toutes réserves ).
est-ce qu'un textNode *peut* comporter un saut de ligne ?
n'y a t-il pas un textNode de part et d'autre ?
M$ nous dit :
« TextNode object Represents a string of text as a node »
(l'objet TextNode représente une chaine de texte comme un nœud)
<https://msdn.microsoft.com/en-us/library/ie/ms535905%28v=vs.85%29.aspx>
============ > = test = (où l'on voit que ça ne marche pas)
============ >
var texts = [
"Hello World",
"Hello Worldnet JF",
"Hello World<br />et JF",
"Hello World<br />et JF"
],
n = 4;
while(n--) {
var h = document.createElement("H1")
var t = document.createTextNode(texts[n]);
h.appendChild(t);
document.body.appendChild(h)
}
==================== > = proposition > ==================== >
function html_to_text(str, lieu)
{
str = str.split(/<br />|n/g,'*');
var n = str.length,
str2 = '',
elem = '';
for (var i= 0; i<n; i++) {
str2 = str[i];
str2 = unescape(str.replace(/ /g, ' '));
str2 = unescape(str2.replace(/é/g, 'é'));
str2 = unescape(str2.replace(/%/g, '%'));
str2 = unescape(str2.replace(/</g, '<'));
str2 = unescape(str2.replace(/=/g, '='));
str2 = unescape(str2.replace(/-/g, '-'));
elem = document.createTextNode(str2)
lieu.appendChild(elem);
if(i!=(n-1)) lieu.appendChild(document.createElement('BR'));
}
}
Cordialement,
Le 13/02/15 17:32, Jean Francois Ortolo a écrit :
function html_to_text(str)
{
var str2 = unescape(str.replace(/ /g, ' '));
var str2 = unescape(str2.replace(/é/g, 'é'));
str2 = unescape(str2.replace(/%/g, '%'));
str2 = unescape(str2.replace(/</g, '<'));
str2 = unescape(str2.replace(/=/g, '='));
str2 = unescape(str2.replace(/-/g, '-'));
str2 = unescape(str2.replace(/<br />/g, ' '));
return str2;
}
Cà marche correctement.
unescape ici ne sert à rien, non ?
Hélas, quand j'essaye de mettre ( dernière ligne ) :
str2 = unescape(str2.replace(/<br />/g, 'n'));
chez moi, cette ligne utilisée seule fonctionne
var str2 = 'bla<br />ble<br />blu'
alert(str2.replace(/<br />/g, 'n'));
ou :
alert(unescape(str2.replace(/<br />/g, 'n')));
hop !
bla
ble
blu
Là, le tableau ne s'affiche pas, manifestement le script crashe.
Je fais ceci avant chaque affectation de ce type de chaque elem de
texte que j'affecte à mes createTextNode(elem); :
elem = htm_to_text(elem);
Je ne sais pas, il semble qu'il ne supporte pas un saut de ligne lors
de l'affectation. ( sous toutes réserves ).
est-ce qu'un textNode *peut* comporter un saut de ligne ?
n'y a t-il pas un textNode de part et d'autre ?
M$ nous dit :
« TextNode object Represents a string of text as a node »
(l'objet TextNode représente une chaine de texte comme un nœud)
<https://msdn.microsoft.com/en-us/library/ie/ms535905%28v=vs.85%29.aspx>
============ > = test = (où l'on voit que ça ne marche pas)
============ >
var texts = [
"Hello World",
"Hello Worldnet JF",
"Hello World<br />et JF",
"Hello World<br />et JF"
],
n = 4;
while(n--) {
var h = document.createElement("H1")
var t = document.createTextNode(texts[n]);
h.appendChild(t);
document.body.appendChild(h)
}
==================== > = proposition > ==================== >
function html_to_text(str, lieu)
{
str = str.split(/<br />|n/g,'*');
var n = str.length,
str2 = '',
elem = '';
for (var i= 0; i<n; i++) {
str2 = str[i];
str2 = unescape(str.replace(/ /g, ' '));
str2 = unescape(str2.replace(/é/g, 'é'));
str2 = unescape(str2.replace(/%/g, '%'));
str2 = unescape(str2.replace(/</g, '<'));
str2 = unescape(str2.replace(/=/g, '='));
str2 = unescape(str2.replace(/-/g, '-'));
elem = document.createTextNode(str2)
lieu.appendChild(elem);
if(i!=(n-1)) lieu.appendChild(document.createElement('BR'));
}
}
Cordialement,
Le 13/02/15 17:32, Jean Francois Ortolo a écrit :
function html_to_text(str)
{
var str2 = unescape(str.replace(/ /g, ' '));
var str2 = unescape(str2.replace(/é/g, 'é'));
str2 = unescape(str2.replace(/%/g, '%'));
str2 = unescape(str2.replace(/</g, '<'));
str2 = unescape(str2.replace(/=/g, '='));
str2 = unescape(str2.replace(/-/g, '-'));
str2 = unescape(str2.replace(/<br />/g, ' '));
return str2;
}
Cà marche correctement.
unescape ici ne sert à rien, non ?Hélas, quand j'essaye de mettre ( dernière ligne ) :
str2 = unescape(str2.replace(/<br />/g, 'n'));
chez moi, cette ligne utilisée seule fonctionne
var str2 = 'bla<br />ble<br />blu'
alert(str2.replace(/<br />/g, 'n'));
ou :
alert(unescape(str2.replace(/<br />/g, 'n')));
hop !
bla
ble
bluLà, le tableau ne s'affiche pas, manifestement le script crashe.
Je fais ceci avant chaque affectation de ce type de chaque elem de
texte que j'affecte à mes createTextNode(elem); :
elem = htm_to_text(elem);
Je ne sais pas, il semble qu'il ne supporte pas un saut de ligne lors
de l'affectation. ( sous toutes réserves ).
est-ce qu'un textNode *peut* comporter un saut de ligne ?
n'y a t-il pas un textNode de part et d'autre ?
M$ nous dit :
« TextNode object Represents a string of text as a node »
(l'objet TextNode représente une chaine de texte comme un nœud)
<https://msdn.microsoft.com/en-us/library/ie/ms535905%28v=vs.85%29.aspx>
============ > = test = (où l'on voit que ça ne marche pas)
============ >
var texts = [
"Hello World",
"Hello Worldnet JF",
"Hello World<br />et JF",
"Hello World<br />et JF"
],
n = 4;
while(n--) {
var h = document.createElement("H1")
var t = document.createTextNode(texts[n]);
h.appendChild(t);
document.body.appendChild(h)
}
==================== > = proposition > ==================== >
function html_to_text(str, lieu)
{
str = str.split(/<br />|n/g,'*');
var n = str.length,
str2 = '',
elem = '';
for (var i= 0; i<n; i++) {
str2 = str[i];
str2 = unescape(str.replace(/ /g, ' '));
str2 = unescape(str2.replace(/é/g, 'é'));
str2 = unescape(str2.replace(/%/g, '%'));
str2 = unescape(str2.replace(/</g, '<'));
str2 = unescape(str2.replace(/=/g, '='));
str2 = unescape(str2.replace(/-/g, '-'));
elem = document.createTextNode(str2)
lieu.appendChild(elem);
if(i!=(n-1)) lieu.appendChild(document.createElement('BR'));
}
}
Cordialement,