Compatibilité Fx Ie javascript

Résolu/Fermé
shawn - 17 mars 2010 à 14:31
 kyride - 17 mars 2010 à 15:19
Bonjour,

je developpe un programme utilisant Php/mysql pour la recherche en BDD javascript pour l'interactivité avec du dom
voici mon problème assez fou comme toujours,
D'abord voici ma carte decoupé avec la fonction onclick qui selon le click affiche les resultat de la bDD
<?php
$x=0;
if($x==0)
{
?><script>alert('<?=$x?>');get_store_info('ile-de-france');</script><?php
}
 ?>
[ du code pas interessant ici]
		<div id = "catalogue">
			<div id = "header_cata" style = "visibility:hidden">
				<img src = "Images/menu-localiser.jpg" alt = "menu_localiser" style = "margin-left:20px;margin-top:50px;" />				
				<p id = "info_region">
				</p>
			</div>
			<div id = "info_cata">&nbsp;
			</div>
		</div>

donc voici le js correspondant
function	check_store_info(store_info, opt, region)
{
	var		store_area;
	var		element;
	var		text;
	var		i;
	var		para;
	var		result;
	var		lien;
	var		image;
	var		table;
	var		td;
	var		tr;

	i = 0;
	store_area = document.getElementById("info_cata");
	alert(document.getElementById("info_cata").value);
	if (store_area)
	{	alert('uuuu');
		store_area.innerHTML = "";
		para = document.createElement("p");
		document.getElementById('info_region').innerHTML = "";
		document.getElementById('header_cata').style.visibility = 'visible';
		document.getElementById('info_region').appendChild(document.createTextNode("Listes des points de vente dans la region " + region));
		element = store_info.getElementsByTagName("store");
		if (element.length == 0)
		{
			text = document.createTextNode("Aucun resultat ne correspond a votre recherche");
			store_area.appendChild(document.createElement("p").appendChild(text));
		}
		else
		{
			var body = document.getElementsByTagName("body")[0];
			tablet = document.createElement("table");
			corps = document.createElement("tbody");
			tablet.setAttribute("cellpadding", "0");
			tablet.setAttribute("cellspacing", "0");
			store_area.appendChild(tablet);
			while (i < element.length)
			{
				trs = document.createElement("tr");
				tds = document.createElement("td");
				trs.appendChild(tds);
				image = document.createElement("img");
				image.setAttribute("src", "Images/puce-carte.jpg");
				image.style.paddingRight = '5px';
				tds.appendChild(image);
				tds = document.createElement("td");
				trs.appendChild(tds);
				lien = document.createElement("a");	
				text = "info_adherent.php?id=" + element[i].getAttribute("id");
				lien.setAttribute("href", text);
				lien.innerHTML = element[i].getAttribute("name");
				tds.appendChild(lien);				
				corps.appendChild(trs);
				tablet.appendChild(corps);//petit vicieux 1 journée d'erreur pour ça -_- total allu
				i++;
			}
		}
	}
	return ;
}

Cette fonction est bloquante sur ie le cheminant avant est bon
Alors sur firefox ca marche correctement pas de souci mes alert sont bonnes et le resultat aussi
Par contre sur IE il y a un pb effectivement quand je re-actilise ma recherche sans modifié la region rien ne s'affiche , si je change de region c'est bon
j'ai remarqué ceci
alert(document.getElementById("info_cata").value); la premiere fois sous ie il le reconnait comme objet par contre quand je re-actualise il ne le reconnait plus (comme nul) et ne va plus dans la boucle)
la fonction get_store amene a check store mais aucun probleme avant check_store
A voir également:

1 réponse

Apres avoir modifié (pendant 3H) mes doms j'ai changé la place de mon script en le mettant après la balise <html> et non dans un include résultat ça fonctionne car apparemment "monsieur IE" ne connaissait plus l'existence de ma balise en actualisant sur la même région
Au final j'ai touché à tout et ca fonctionne ...
0