Syntaxe pour exécuter fonction javascript dans html += ('')

Eléphant du PHP | 53 Messages

03 août 2016, 14:20

Bonjour,

J'ai une fonction qui marche très bien sur un exemple dans un fichier à part, cette dernière permet d'écrire dans le div qui correspond à l'id passé en paramètre. Mais quand j'ai voulu l'ajouter à mon fichier réel la syntaxe et la fonction ne semble plus marcher.

Si quelqu'un voit une erreur dans ces lignes, j'ai cherché en vain !
html += ('<td class="hideHoraires"><body onload="javascript:addElem(\'begin\')"><div id="begin" align="center"></div>');
c'est ici que j'appelle ma fonction (j'ai essayé sans le "javascript:" pour le addElem ca ne fonctionne pas non plus).

Ma fonction, même si cette dernière ne comporte pas d'erreurs je pense :
function addElem(id) {
	document.getElementById(id).innerHTML = "<img src=\"settings.png\" width=\"20\" heigth=\"20\" onclick=\"javascript:visibilite('radio'); return false;\" >";
}
Sur mon fichier à part j'utilisais la méthode body onload="addElem('begin')", c'est pour cela qu'il est présent dans mon code.

Le programme ne passe pas par ma fonction (j'ai testé avec un alert).

Si quelqun peut m'aider !

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

03 août 2016, 14:47

salut,

il n'y a qu'une seule balise body dans la structure d'un fichier html, donc ton code ne peux fonctionner.

tu souhaites plutôt utiliser l'event onclick ?
par exemple
<a href="#" onclick="addElem(\'begin\');return false;"/>display form</a>

@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 53 Messages

03 août 2016, 15:00

Je viens de remplacer la balise body par le code que tu m'as proposé, ma fonction ne s'éxecute pas non plus ...

Le onclick est une bonne solution mais ici j'aimerai que les div se remplissent dès le chargement de la page et pas sur un onclick !

Si il y a une alternative au onload ?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

03 août 2016, 15:17

aahhh ben dans ce cas c'est dans le onload du body de la page qu'il faut mettre ça.

si tu as plusieurs ligne comme cela y a des chances que ça pose problème (un id est normalement unique).

du coup est ce qu'il y a vraiment besoin de cela et le faire coté serveur directement ?

@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 53 Messages

03 août 2016, 15:47

Je vais effectivement essayer de l'intégrer au body coté client, ca me parait être la meilleure solution.

Mais sans id dynamique et avec un id unique, cela va me poser problème effectivement !

Merci pour les infos ! Je vais bosser la dessus !

Bonne fin de journée !

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

03 août 2016, 16:26

de rien, a toi aussi ;)

@+
Il en faut peu pour être heureux ......