Forum Clubic

Probleme transmission variable javascript

Bonjour,

Je rencontre un probleme avec mon script

Je voudrais afficher les departements du pays concerné quand celui ci est selectionné (France -> depart france, Belgique -->region belge…)
Pour cela j’ai utilise un div et du javascript mais celui ci ne fonctionne que sous IE et non pas Mozilla !

D’apres mes recherches sur google, innerhtml poserait des problemes sous mozilla
Auriez vous idee de ce que je pourrais faire afin que cela fonctionne ?
D’avance merci
Marie

Voici un extrait du code :
$contenu=‘Département :

’;

$search1=@mysql_query(“select ccp from fiche where ccp >‘0’ AND pays=’$pays’ order by ccp”);
$res1=@mysql_fetch_object($search1);

$col=16;

while ($res1)
{
if ($res1->ccp!=$pays_avant)
{
require(“Modules/inc.convertccp.php”);
$i++;

	if ($res1->ccp < 10) $res1->ccp='0'.$res1->ccp;

	$contenu.='<INPUT TYPE="checkbox" NAME="ccp['.$i.']" value="'.$res1->ccp.'">';
	$contenu.='<FONT SIZE="1">'.$ccp.'&nbsp;('.$res1->ccp.')&nbsp;</FONT>';

	if ($tour==$col)
		{
		$tour=0;
		$contenu.='</TD></TR></TABLE></TD><TD><TABLE><TR><td>';
		}
		else
		{
		$tour++;
		$contenu.='</TD></TR><TR><TD>';
		}
	}
$pays_avant=$res1->ccp;
$res1=@mysql_fetch_object($search1);
}

$contenu.=’

’;
$contenu=addslashes("$contenu");

echo ‘’;
?>

Je pencherais sur le form.FIN_PAYS plutôt que le innerHTML. Essaie de mettre un “alert” dans ton if (form.FIN_PAYS.value == “1”) pour voir si le problème vient de là :slight_smile:

if (form.FIN_PAYS.value == "1")
{
alert('ok');
document.getElementById("zone_depart").innerHTML = "<?=$contenu?>"; 
}

Edité le 12/12/2008 à 15:17

Oulah…

Je ne sais pas d’où vient ton script, mais 1) il ne fonctionnera plus sur les installs récentes de PHP 2) innerHTML fonctionne sous Firefox, même que je sais jamais si c’est innerHTML ou innerHtml.

Sinon, vérifie si $contenu ne contient pas de saut de ligne, car une chaine en javascript ne peut pas sauter à la ligne, ie:

machin.innerHTML = 'ah 
ah ah
ah';

Est faux. C’est :

machin.innerHTML = 'ah\n' +
'ah ah\n' +
'ah';

Qui est bon.