Pb avec un innerHTML

Ankou -  
 jim -
Bonjour !

Voila mon pb:
Dans la page HTML, j'ai un DIV que je veux renseigné dynamiquement. Mais voila, pour du texte ca marche bien mais lorsque c'est du script ca marche po.

Voici le code:
<html>
<body>
<form name="essai">
<table width="180" class="tableauEntete" cellpadding='0' cellspacing='0'>
<tr>
<td><div id="toto1"></div></td>
</tr>
</table>
</form>
</body>
</html>
<script>
document.getElementById("toto1").innerHTML = "<sc"+"ript>document.write('coucou');</scr"+"ipt>";
</script>

je casse bien ma chaine afin qu'il n'éxecute pas le script !!

Si qqun a une solution!
merci d'avance

Ankou

14 réponses

Bobinours Messages postés 2898 Date d'inscription   Statut Membre Dernière intervention   504
 
Ca ne marche pas pare que tu utilise un document.write() alors que la page est finie de chargé.

Ceci est amplement suffisant :

document.getElementById("toto1").innerHTML = 'coucou';

-= Bobinours =-
Une Contrée? http://bobin.underlands.org/cgi-bin/belette.pl
2
ponpon
 
je ne comprend pas dans une même page ca fonctionne :
<html><head><title>Test</title></head>
<body>

<table width=100%>

<tr class="grid" style="">
<td class="grid">IP VoDSL</td>
<td class="grid" >10td>
</tr>
</table>

<SCRIPT type="text/JavaScript" language="JavaScript">

var mes_td = document.getElementsByTagName("td");

ipvoip = mes_td[1].firstChild.data;

document.write(ipvoip);

</script></body></html>

Mais je n'arrive pas a dire au niveau du document.getElementByTagName, que je veux qu'il cherche dans une frame.
Est possible si oui comment ?
Merci
1
jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   934
 
Un niveau supplémentaire d'indirection est il vraiment nécessaire ?

The software said "Requires Windows98, Win2000, or better
So I installed Unix.
0
ponpon
 
bonjour, moi aussi j'ai un pti pb avec ma derniere ligne du code

ma_frame=document.all('frameX');
mes_td=ma_frame.getElementsByTagName("td");
valeur=mes_td[numero_du_td].innerHtml;

si je fait un alert test ca affiche le alerte que lorsque j'enleve la derniere ligne sinon ca indique erreur sur la page

une solution ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ponpon
 
Il faut que j'explique un peu en fait j'aimerai recup une valeur se trouvant dans un tableau.
C'est suite a un test que la page s'affiche dans une frame.
0
Bobinours Messages postés 2898 Date d'inscription   Statut Membre Dernière intervention   504
 
Déjà "document.all" c'est une erreur.
Je n'ai pas le temps d'expliquer pourquoi mais il ne faut pas l'utiliser. Utilise les DOM à la place...
0
ponpon
 
c'est quoi des dom ?
0
Bobinours Messages postés 2898 Date d'inscription   Statut Membre Dernière intervention   504
 
Pour les DOM (Document Object Model) regarde là :
http://www.yoyodesign.org/doc/w3c/dom2-style/Overview.html
(tu dois pouvoir trouver des liens plus explicatif)
C'est la "nouvelle" normalisation des accès aux structures Javascript...

"document.all['id']" ---devient ---> "document.getElementById('id')"
0
ponpon
 
Je ne comprend pas, j'ai fais une fonction :
function test()
{
{alert("1");}
ma_frame=document.all('frameressource');
{alert("2");}
var mes_td=ma_frame.getElementsByTagName("td");
{alert("3");}
ipvoip = mes_td[63].firstChild.data;
{alert("5");}

}
Ca arrive au alert3 mais ca ne le passe pas, de plus comment peut on faire pour recup quand ca fonctionnera la valeur ipvoip car on ne peut pas modifier une frame. J'aimerai recup l'ip pour ensuite lancer d'autre tests
0
igagnant Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   4
 
normal que le script s'execute.. tu peut écrire ta chaine sans la casser
"<script>document.write('coucou');<script>" 

Ensuite tu remplaces le signe inférieur < des 2 balises <script> par &L T; enlever l'espace entre le L et le T que j'ai mis volontairement pour que ça puisse être visible!
0
igagnant Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   4
 
normal que le script s'execute.. tu peut écrire ta chaine sans la casser
"<script>document.write('coucou');<script>" 

Ensuite tu remplaces le signe inférieur < des 2 balises <script> par &L T; enlever l'espace entre le L et le T que j'ai mis volontairement pour que ça puisse être visible!
0
igagnant Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   4
 
dsl pas vu la date du post :(
0
jim
 
var ipvoip =
0
pazz
 
Il me semble que innerHTML ne fini pas avec ";" c'est une exeption sa pourai venir de la.

PazZ
-1
pazz
 
ahahaha le pire c'est que dans mon script c'était le cas MDR ahaha lol et oui les débuts.
0
briiiiix Messages postés 575 Date d'inscription   Statut Membre Dernière intervention   18
 
Je vous conseille d'utiliser la framework "prototype".
www.prototypejs.org/download

Pour pouvoir vous aider, je pourrais vous fournir mon adresse mail et je réviserais le code en entier .

Cordialement
-1