Probleme avec GetElementById et internet

thomas -  
hack_net Messages postés 814 Statut Membre -
Bonjour,
J'ai un sérieux problème auquel je n'arrive pas à trouver de solution malgrès mes recherches.
J'utilise getElementById pour modifier une valeur d'un input.Cela fonctionne très bien sous firefox mais sous internet explorer c'est peine perdu^^.

J'espere que vous pourrez trouver une solution, je vous joint ma partie de code:

<br><input type="checkbox" name="application[]" value="Compte SAP" onchange="javascript:document.getElementById('zone').type='text'" />Compte SAP      <input type="hidden" id='zone' name="texte" size="30" value="Saisissez le Profil modle" onclick="javascript:document.getElementById('zone').value=''" />

Cordialement.

3 réponses

  1. hack_net Messages postés 814 Statut Membre 51
     
    Encore IE, toujours IE, mais quand est-ce que les gens vont se rendre compte qu'il ne faut plus l'utiliser !!! ( je ne parle pas pour toi bien sûre, puisqu'un développeur doit essayer de faire tourner ce qu'il développe vers le maximum de chose...)
    Bref, quel est le document.getElementById qui ne marche pas ? Le premier ? Le deuxième ? Les deux ?
    0
  2. thomas
     
    Malheureusement je suis obligé de manipuler internet explorer, dans mon entreprise les utilisateurs ne connaissent que sa...
    Bon j'ai pris une bifurcation pour résoudre mon problème en utilisant des <div>, il est maintenant résolue.
    Pour ceux que sa intéresse je glisse mon code.

    .hidden {
    display: none;
    }
    .visible {
    display: inline;
    }
    div {
    border: 2px solid #CCCCCC;
    background: #CCCCCC;
    width: 200px;
    height: 200px;
    }

    </style>
    <script type="text/javascript">
    function hide(id) {
    if (document.getElementById(id).className == "hidden") {
    document.getElementById(id).className = "visible";
    } else {
    document.getElementById(id).className = "hidden";
    }
    }
    function show(id) {
    if (document.getElementById(id).className == "visible") {
    document.getElementById(id).className = "hidden";
    } else {
    document.getElementById(id).className = "visible";
    }
    }
    </script>

    <br><input type="checkbox" name="application[]" value="Compte SAP" onclick="javascript:show('cadre2');" />Compte SAP      
    <div id="cadre2" class="hidden">
    <input type="text" id='SAP' size="30" value="Saisissez le Profil modle" onclick="javascript:document.getElementById('SAP').value='';" />
    </div>
    0
  3. hack_net Messages postés 814 Statut Membre 51
     
    Tu pouvais même regrouper tes deux fonctions en 1 et ne pas utiliser de class CSS ;)

    <script type="text/javascript">
    function am(id){
         if(document.getElementById(id).syle.display == "block"){
              document.getElementById(id).syle.display="none";
         }
         else{
              document.getElementById(id).syle.display="block";
         }
    }
    </script> 
    
    <br><input type="checkbox" name="application[]" value="Compte SAP" onclick="javascript:am('cadre2');" />Compte SAP       
    <div id="cadre2" style="display: block;"> 
    <input type="text" id='SAP' size="30" value="Saisissez le Profil modle" onclick="javascript:document.getElementById('SAP').value='' " /> 
    </div>
    


    A+
    0