probleme IE options

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • probleme IE options

    hi,

    ich habe mit folgend efunction geschrieben.

    PHP-Code:
    function renderSelectLand(formname,fieldname,staatValue) {
        for(var 
    i=0;i<document[formname][fieldname].options.length;i++) {
            if (
    staatValue == '') {            
                
    document[formname][fieldname].options[i].style.display 'block';            
            } else {
                if (
    document[formname][fieldname].options[i].id == staatValue) {
                    
    document[formname][fieldname].options[i].style.display 'block';
                } else {
                    
    document[formname][fieldname].options[i].style.display 'none';
                }            
            }
        }

    //ende renderSelectLand 
    diese wird beim ändern einer selectfeldes aufgerufen, und ändert die inhalte in einem anderen selectfeld.
    beim audfug wir der formularname, der feldname(selectbox) und der valuewert übergeben.
    in der function werden die felder anhand der id's dann reduziert.
    die ids sind niicht eindeutig und werden mehrfach vergeben, so das bei durchlauf über die for schleife diese geprüft werden können und gegebenenfalls ausgeblendet werden können.

    und genau das ausblenden funktioniert im IE nicht. hat jemand eine idee warum?

  • #2
    hier noch ein testscript bei dem es im FF geht

    PHP-Code:
    <script type="text/javascript">

    function 
    delEntry(sel) {
        
        for(var 
    i=0;i<document.suche.land.options.length;i++) {
            if (
    document.suche.land.options[i].id == sel) {
                
    document.suche.land.options[i].style.display 'none';
            } else {
                
    document.suche.land.options[i].style.display 'block';
            }
        }
        

    }
    </
    script>

    <
    form name="suche">
    <
    select name="land" size="5">
        <
    option value="1" id="1">D</option>
        <
    option value="2" id="2">I</option>
        <
    option value="2" id="2">I</option>
        <
    option value="2" id="2">I</option>
        <
    option value="3" id="3">F</option>    
    </
    select>
    </
    form>

    <
    br />
    <
    br />
    <
    a href="#" onclick="delEntry(1)">delete 1</a><br />
    <
    a href="#" onclick="delEntry(2)">delete 2</a><br />
    <
    a href="#" onclick="delEntry(3)">delete 3</a><br /> 

    Kommentar


    • #3
      die ids sind niicht eindeutig und werden mehrfach vergeben
      und genau das darf nicht geschehen! eine id darf pro seite nur einmal(!!!) vergeben werden.

      peter
      Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
      Meine Seite

      Kommentar


      • #4
        das hatte ich mir auch schon gedacht, ber dara liegt es definitiv nicht

        und meines wissens nach darf ich id mehrfach vergeben, kann dann aber ncihtmehr per getElementById darauf zugreifen. aber das mache ich ja auch nicht!

        Kommentar


        • #5
          und meines wissens nach darf ich id mehrfach vergeben
          nö, ist verboten! außerdem liegt es nicht an javascript sondern am ie und css. selbst das hier funzt schon nicht:
          PHP-Code:
          <select name="land" size="5">
              <
          option value="1" id="1" style="display: none;">D</option>
              <
          option value="2" id="2">I</option>
              <
          option value="2" id="2">I</option>
              <
          option value="2" id="2">I</option>
              <
          option value="3" id="3">F</option>    
          </
          select
          du musst die knoten übers dom entfernen. grundlagen gibt es
          hier und ein (ajax-)tutorial mit select-manipulation hier

          peter
          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
          Meine Seite

          Kommentar

          Lädt...
          X