Creations Elements HTML Bug sous IE8

Résolu
jordane45 Messages postés 38140 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 - 3 sept. 2013 à 16:51
jordane45 Messages postés 38140 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 - 5 sept. 2013 à 10:37
Bonjour,

J'utilise du javascript pour créer des éléments dans un tableau HTML
( Ajout de lignes, TD, Inputs...)
Sous FF et IE10 tout se passe correctement... par contre sous IE8 ça plante :(

Le code ressemble à ça :

var Tbl=document.getElementById('table_rep');
var tr = document.createElement('tr');
Tbl.appendChild(tr);
var td = document.createElement('td');
	td.id="TrAnswerLib_" + NbTR;
	td.setAttribute ("class","col1");
              td.className="col1";
	td.setAttribute("style","text-align:left");
	td.colSpan = "4";
	td.setAttribute ("colspan","4");
	tr.appendChild(td);
var inp = document.createElement('input');
	inp.name="inpRep[]" ;
	inp.id="inpRep" + NbTR ;
	inp.type="text";
	inp.style.width="98%";
	inp.style.height="98%";
	inp.setAttribute("class","reponses");
             inp.className="reponses";
	td.appendChild(inp);




Comme vous pouvez le constater j'essaye d'attribuer un style à mes éléments
(en passant par une class CSS..)
J'ai beau essayer différents moyens..sous IE8, il refuse de me le prendre en compte !

Les outils de developpement d'IE ne sont pas très "pratiques" pour suivre le style des éléments (contrairement à FF).

Auriez-vous une Idée pour "forcer" IE8 à prendre en compte mes styles ?

4 réponses

@karamel Messages postés 1855 Date d'inscription vendredi 9 mai 2008 Statut Modérateur Dernière intervention 18 avril 2024 153
3 sept. 2013 à 21:59
bonjour

la répétition de pas mal de choses peut etre aussi la cause du problème et je ne voit pas l'appendChild du td dans le tr et pourquoi mettre des styles en dure si les éléments ont une class

en utilisant uniquement setAttribute cela devrait pouvoir fonctionner


--
1
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
Modifié par cs_AlexN le 3/09/2013 à 20:32
Bonjour,

Chaque navigateur comprend un "dialecte" du JavaScript original, le ECMA Script dont la dernière version de la norme est là (Attention, ça pique !) : http://www.ecma-international.org/ecma-262/5.1/. Et comme décrit ici, à savoir comment fabriquer un document web et le relier à un langage de scripting pour le rendre dynamique et interactif (Même punition !) : http://www.w3.org/TR/REC-DOM-Level-1/ecma-script-language-binding.html. Et parfois, les versions d'un même navigateur ne comprennent pas exactement le même dialecte.
Aussi pour éviter de chercher à savoir pourquoi dans telle version du navigateur qui s'exécute avec tel ou tel système, ce qu'on a fait ne marche pas, il vaut mieux utiliser des librairies, qui utilisent une forme "normalisée" de JavaScript, compris par la plus grande partie des navigateurs. Ces librairies de fonctions ont été fabriquées par des gens plus que compétents dans ce domaine et ont été testées et éprouvées pour devenir des outils de qualité professionnelle. Parmi ces librairies, on peut citer Prototype, script.aculo.us, Dojo Toolkit, MooTools, JQuery (https://en.wikipedia.org/wiki/JavaScript_framework).
Bien sûr, l'utilisation de ces "boîtes à outils" ne dispense pas de la nécessité de comprendre les bases du JavaScript.
0
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
Modifié par cs_AlexN le 3/09/2013 à 20:36
Note pour Jordane et les personnes qui fabriquent ce site. Les liens que génèrent votre système de commentaires sont faux. Ils prennent des "." et des ")" qui rendent les liens faux Ce serait sympa de corriger tout ça, sinon les liens vers les compléments d'information qu'on veut fournir ne sont plus accessibles et la réponse peut ne plus être cohérente (les 2 "ça pique" ne sont pas important mais le dernier pourrait l'être).

Merci.

PS : J'ai pu corriger les liens moi même en cliquant "édition" du message et en déplaçant les crochets [] qui semblent servir de marqueurs de liens chez vous. Mais bon ce n'est pas aux utilisateurs de fabriquer du HTML valide ;o)
0
jordane45 Messages postés 38140 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
5 sept. 2013 à 10:37
Merci pour vos réponses.
Les répétitions étaient dues à divers essais (que je n'ai pas nettoyé avant de faire mon copier/coller).

Enfin, pour résoudre le souci, je suis entièrement passé par un CSS (piste que j'avais déjà commencé à explorer).

Clôture du sujet.
0
Rejoignez-nous