Probleme avec GetElementById et internet

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

  • Votes
  • Date
  • Date décroissante
  1. 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 ?
    1. 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>
      1. 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+