Forums d'assistance et de discussion sur les logiciels produits par Mozilla ou créés à partir des technologies Mozilla. Ce site ne dépend pas de la fondation Mozilla et est maintenu par un collectif de bénévoles.
HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
...enfin pas vraiment le site en entier mais une partie. Il s'agit d'une liste déroulante avec sous liste déroulante (tout cela fonctionne avec du PHP et base de donnée MYSql). Sous Mozilla, tout s'ouvre sans problème et sous IE impossible de dérouler la sous liste. Du coup étant donné qu'il s'agit d'un formulaire il est impossible de le valider puisque ce champ n'a pas été renseigné... Ce n'est pas moi qui ai crée tout ca mais j'ai trouvé un petit quelque chose comme ca : (il va de soi que j'ny comprend rien mais etant donné que j'ai vu IE je me suis dit que c'était peut-être là que se trouvait le problème...). Merci d'avance si vous avez une idée...
// Compilation conditionnelle d'IE
/*@cc_on
@if (@_jscript_version >= 5)
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
@else
xmlhttp = false;
@end @*/
// on essaie de créer l'objet si ce n'est pas déjà fait
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
try {
xmlhttp = new XMLHttpRequest();
} catch (e) {
xmlhttp = false;
}
}
if (xmlhttp) {
// on définit ce qui doit se passer quand la page répondra
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
// Traitement de la réponse.
tableauResultats = xmlhttp.responseText.split("|");
document.getElementsByName(cible)[0].innerHTML = "";
for ( i in tableauResultats ) {
// on regarde si il faut ajouter l'attribut selected au chargement de la page
if ( event == 'onLoad' && tableauResultats[i] == '<?= $sousTheme ?>')
elem = new Option(tableauResultats[i],tableauResultats[i],false,true);
else elem = new Option(tableauResultats[i],tableauResultats[i],false,false);
document.getElementsByName(cible)[0].appendChild(elem);
if (tableauResultats.length > 2) document.getElementsByName(cible)[0].style.display="";
else document.getElementsByName(cible)[0].style.display="none";
}
}
}
}
Édition modérateur : merci d'utiliser les balises pour rendre votre code lisible.
Ah voui forcemment ca serait plutot embetant... Du coup j'serais complètement bloquée alors... J'ai essayé des scripts sencés rendre le code javascript compatible pour tout navigateurs mais a pas marché...