Compatibilité entre mozilla et firefox

Résolu
wals69 Messages postés 14 Date d'inscription vendredi 13 juillet 2007 Statut Membre Dernière intervention 2 mai 2008 - 24 juil. 2007 à 09:29
wals69 Messages postés 14 Date d'inscription vendredi 13 juillet 2007 Statut Membre Dernière intervention 2 mai 2008 - 24 juil. 2007 à 14:20
Bonjour,
Alors voila, j ai un probleme d'une de mes fonctions javascript qui fonctionne sur Mozilla mais pas sur IE. Celle-ci me permet d'afficher une balise div ou de la cacher selon la valeur que j'attribues a mon select. voici ma fonction JAVASCRIPT:

function RendVisibleClient(texte)
{
if (texte= ="Prive")
window.document.getElementById("test").style.visibility= 'visible';
else
window.document.getElementById("test").style.visibility= 'hidden';
}

et voici ma balise div :



MERCI D AVANCE

REPONSE1 :

http://www.javascriptfr.com/auteurdetail.aspx?ID=653783 B onjour...
Pas forcémént le bon endroit pour poster ta question, il est encore heureux qu'il y ai quelqu'un à l'écoute.
A la vue des lignes, sauf le style ="border:hidden" qui me paraît suspect le reste fonctionne.
L'erreur doit être ailleurs...dans l'appel de la fonction peut être.
Conseil,créer une nouvelle discution en mettent la façon dont tu appeles la fonction.
;0)

//-----------------------

Alors voila comment j appelle ma fonction dans le onchange de mon select

<select size=1 onChange="javascript:RendVisibleClient(this.value)" name="statut_playlist" >
      <option <?php if(isset($_POST['statut_playlist']) && $_POST['statut_playlist'] == 'Prive') echo "selected='selected'";?>>Prive</option>
      <option <?php if(isset($_POST['statut_playlist']) && $_POST['statut_playlist'] == 'Public') echo "selected='selected'";?>>Public</option>
    </select>

Encore merci

4 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
24 juil. 2007 à 12:13
ah.... j'avions point vu la fin...








<select size=1 onChange="javascript:RendVisibleClient(this.value)" name="statut_playlist" >
     
<option <?php if(isset($_POST['statut_playlist']) &&
$_POST['statut_playlist'] == 'Prive') echo
"selected='selected'";?>>Prive</option>
      <option
<?php if(isset($_POST['statut_playlist']) &&
$_POST['statut_playlist'] == 'Public') echo
"selected='selected'";?>>Public</option>
    </select>








    tu testes value et tes lignes option n'ont que text, pas de value
          ( ça ne doit pas non plus fonctionner avec FF ! )
   ====> teste text ou met un value !








<select size=1 onChange="RendVisibleClient(this.options[this.selectedIndex].value);" name="statut_playlist" >
     
<option value='Prive' <?php if(isset($_POST['statut_playlist']) &&
$_POST['statut_playlist'] == 'Prive') echo
"selected='selected'";?>>Prive</option>





       ou
<select size=1 onChange="RendVisibleClient(this.options[this.selectedIndex].text);" name="statut_playlist" >
     
<option <?php if(isset($_POST['statut_playlist']) &&
$_POST['statut_playlist'] == 'Prive') echo
"selected='selected'";?>>Prive</option>

    une petite remarque encore.
    si le select n'a pas de size ( ce qui est le cas ici ) ou a un size =1,
       ou si la condifiton php est vrai, la 1ère option est sélectionnée.
       on pourra cliquer dessus autant de fois qu'on veut, onchange
       ne sera pas déclenché ( avant d'avoir choisi une autre ligne d'abord )
    certains ajoutent une ligne bidon et teste si selectedIndex est > 0
    mais onfocus="this.selectedIndex=-1;" dans la balise select, c'est pas mal

<hr />
Cordialement                Bul         [mon Site]     [M'écrire]
<hr />
3
cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010
24 juil. 2007 à 09:53
Essayes plutot :
document.getElementById("test").style.display= '';     // <== Visible
document.getElementById("test").style.display= 'none'; // <== Pas visible

<hr />
Life is Too Short ...
Enjoy Your Life ...
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
24 juil. 2007 à 10:29
Bonjour,

avec visibility :

<script type="text/javascript">
function RendVisibleClient(texte)
{    if (texte=="Prive")
        window.document.getElementById("test").style.visibility='visible';
    else
        window.document.getElementById("test").style.visibility='hidden';
}
</script>
et voici ma balise div :

exemple




border:hidden c'est plutôt border:0

ton erreur vient donc plutôt de "texte",
qui ne reflête pas la ligne du select.
par exemple :
    <select onchange="



RendVisibleClient(this.options[this.selectedIndex].text)



" ...







<hr />



Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
0
wals69 Messages postés 14 Date d'inscription vendredi 13 juillet 2007 Statut Membre Dernière intervention 2 mai 2008
24 juil. 2007 à 14:20
Bravo merci beaucoup  ca m'a decoince
merci beaucoup
Je renvoie mon code fini et qui marche grace a vous.

<select size=1 onChange="RendVisibleClient();" name="statut_playlist" id="statut_playlist">
      <option value="Prive" <?php if(isset($_POST['statut_playlist']) && $_POST['statut_playlist'] == 'Prive') echo "selected='selected'";?>>Prive</option>
      <option value="Public" <?php if(isset($_POST['statut_playlist']) && $_POST['statut_playlist'] == 'Public') echo "selected='selected'";?>>Public</option>
    </select>

function RendVisibleClient()
{
var y = document.PlayListe.statut_playlist.options[document.PlayListe.statut_playlist.options.selectedIndex].value;
if (y == "Prive")
document.getElementById("test").style.visibility= 'visible';
else
document.getElementById("test").style.visibility= 'hidden';
}

encore merci
0
Rejoignez-nous