11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour tout le monde,

C'est mon premier post sur le forum alsa jsuis tout ému ^^

Alors alors j'usse souhaité créé un élément iframe avec un attribut name directement en javascript pour faire un traitement dedans bien invisible (pas question d'avoir ce genre d'élément dans mon code html ^^).

Voici donc ma procédure :

var iframe = document.createElement('iframe');
	var name = document.createAttribute('name');
	
	name.nodeValue = "iframe_photo";
	iframe.setAttributeNode(name);
 
	// On ajoute l'iframe au formulaire
	document.getElementById('form_photo').appendChild(iframe);


Ce code fonctionne très bien sur firefox (et sur tout ce qui est geko je pense) par contre j'ai un soucis bizarre sous IE.

L'iframe est bien créée mais l'attribut name n'est pas créé ou pas ajouté...
A savoir que si je fais un attribut genre "id" ça le fait bien !

Donc voila si quelqu'un a une idée je suis preneur !

++
Salut,

Source documentaire msdn

donc en fait il faudrait quelque chose comme ça :

if (document.all) {
var new_iframe = document.createElement("<iframe name='turlututu'></iframe>");
}
else {
var new_iframe = document.createElement("iframe");
new_iframe.name="turlututu";
}
Bon bin super j'ai même utilisé vos deux méthodes ^^

La première simplifie la création d'élément mais ne passe pas sur IE quand meme.

Et la deuxieme passe bien sur IE Smiley smile

Merci bien ++
Normalement, setATtribute devrait fonctionner partout puisqu'il s'agit d'une fonction de base de la norme DOM.