Twilo: Dropdownlistenelemente per AJAX Request austauschen

Beitrag lesen

Hallo,

im Firefox und Opera funktioniert es erstmal wie gewünscht... nur der IE weigert sich die Einträge zu ändern

<script type="text/javascript">  
<!--  
/*<![CDATA[*/  
function listeLeeren(liste){  
  for (var i = liste.length-1; i >= 0; i--){  
    liste.options[liste.length - 1] = null;  
  }  
}  
function aendern(xml, Aobj, Atag){  
  var eintraege = xml.getElementsByTagName(Atag);  
  for (var i=1; i<eintraege.length; i++) {  
    var eintrag = eintraege[i];  
    for (j=0; j<Aobj.length; ++j){  
      if (Aobj.options[j].value == eintrag.getAttribute('id')){  
      //alert(Aobj.options[j].text+'='+eintrag.firstChild.nodeValue);  
        Aobj.options[j].text = eintrag.firstChild.nodeValue;  
      }  
    }  
  }  
}  
  
function test(){  
  var xmlRequest = (window.XMLHttpRequest) ? new XMLHttpRequest() : ((window.ActiveXObject) ? new ActiveXObject('Microsoft.XMLHTTP') : false);  
  
  var url = 'preis_berechnen.php?' +  
    '_produkt_id='   + document.forms[0]._produkt_id.value + '&' +  
    '_gewicht_id='   + document.forms[0]._gewicht_id.value + '&' +  
    '_groesse_id='   + document.forms[0]._groesse_id.value + '&' +  
    '_farb_id='      + document.forms[0]._farb_id.value + '&' +  
    '_auflage_id='   + document.forms[0]._auflage_id.value + '&' +  
    '_versandart_id='+ document.forms[0]._versandart_id.value;  
  xmlRequest.open('GET', url, true);  
  xmlRequest.onreadystatechange = function(){  
    if(xmlRequest.readyState==4){  
      if(xmlRequest.status==200){  
        var xml = xmlRequest.responseXML;  
        var netto= document.getElementById('netto');  
        var mwst= document.getElementById('mwst');  
        var brutto= document.getElementById('brutto');  
        var produktB= document.getElementById('produktB');  
        var gewichtB= document.getElementById('gewichtB');  
        var groesseB= document.getElementById('groesseB');  
        var farbeB= document.getElementById('farbeB');  
        var auflageB= document.getElementById('auflageB');  
        var versandartB= document.getElementById('versandartB');  
        netto.innerHTML = xml.getElementsByTagName("netto")[0].firstChild.nodeValue;  
        mwst.innerHTML = xml.getElementsByTagName("mwst")[0].firstChild.nodeValue;  
        brutto.innerHTML = xml.getElementsByTagName("brutto")[0].firstChild.nodeValue;  
        produktB.innerHTML = xml.getElementsByTagName("produkt")[0].firstChild.nodeValue;  
        gewichtB.innerHTML = xml.getElementsByTagName("gewicht")[0].firstChild.nodeValue;  
        groesseB.innerHTML = xml.getElementsByTagName("groesse")[0].firstChild.nodeValue;  
        farbeB.innerHTML = xml.getElementsByTagName("farbe")[0].firstChild.nodeValue;  
        auflageB.innerHTML = xml.getElementsByTagName("auflage")[0].firstChild.nodeValue;  
        versandartB.innerHTML = xml.getElementsByTagName("versandart")[0].firstChild.nodeValue;  
  
        aendern(xml, document.forms[0]._gewicht_id, 'gewicht');  
        aendern(xml, document.forms[0]._groesse_id, 'groesse');  
        aendern(xml, document.forms[0]._farb_id, 'farbe');  
        aendern(xml, document.forms[0]._auflage_id, 'auflage');  
      }  
    }  
  }  
  xmlRequest.send(null);  
}  
/*]]>*/  
-->  
</script>
<?xml version="1.0" encoding="UTF-8"?>  
<root>  
  <preis>  
    <netto>532,04</netto>  
    <mwst>85,13</mwst>  
    <brutto>617,17</brutto>  
  </preis>  
  <spezifikationen>  
    <produkt>test2</produkt>  
    <gewicht>90g</gewicht>  
    <groesse>DIN A0</groesse>  
    <farbe>Farbe 4/0</farbe>  
    <auflage>1000 Stück</auflage>  
    <versandart>per Post</versandart>  
  </spezifikationen>  
  <listeneintraege>  
    <gewichte>  
      <gewicht id="1">90g</gewicht>  
      <gewicht id="2">100g (+55,00 €)</gewicht>  
      <gewicht id="3">135g (+247,52 €)</gewicht>  
      <gewicht id="4">170g (+440,04 €)</gewicht>  
      <gewicht id="5">250g (+880,09 €)</gewicht>  
      <gewicht id="6">300g (+1.155,12 €)</gewicht>  
    </gewichte>  
    <groessen>  
      <groesse id="4">DIN A0</groesse>  
      <groesse id="3">DIN A1 (-249,31 €)</groesse>  
      <groesse id="2">DIN A2 (-372,42 €)</groesse>  
      <groesse id="5">DIN A3 (-434,68 €)</groesse>  
      <groesse id="6">DIN A4 (-465,67 €)</groesse>  
      <groesse id="7">DIN A5 (-482,04 €)</groesse>  
      <groesse id="8">DIN A6 (-490,24 €)</groesse>  
      <groesse id="9">DIN A7 (-493,60 €)</groesse>  
      <groesse id="10">DIN A8 (-496,03 €)</groesse>  
      <groesse id="11">DIN A9 (-496,48 €)</groesse>  
      <groesse id="12">DIN A10 (-496,72 €)</groesse>  
    </groessen>  
    <farben>  
      <farbe id="7">Farbe 4/4 (+73,54 €)</farbe>  
      <farbe id="1">Farbe 4/0</farbe>  
      <farbe id="2">Farbe 4/2 (+36,77 €)</farbe>  
      <farbe id="3">Farbe 4/1 (+18,38 €)</farbe>  
      <farbe id="4">Farbe 2/2 (+0,00 €)</farbe>  
      <farbe id="5">Farbe 2/1 (-18,39 €)</farbe>  
      <farbe id="6">Farbe 2/0 (-36,78 €)</farbe>  
    </farben>  
    <auflagen>  
      <auflage id="1">1000 Stück</auflage>  
      <auflage id="2">2000 Stück (+498,44 €)</auflage>  
      <auflage id="3">3000 Stück (+996,88 €)</auflage>  
      <auflage id="4">5000 Stück (+1.495,32 €)</auflage>  
      <auflage id="5">7500 Stück (+3.239,86 €)</auflage>  
      <auflage id="6">10000 Stück (+4.485,96 €)</auflage>  
      <auflage id="7">15000 Stück (+6.978,17 €)</auflage>  
      <auflage id="8">20000 Stück (+9.470,38 €)</auflage>  
      <auflage id="10">50000 Stück (+24.423,62 €)</auflage>  
      <auflage id="11">100000 Stück (+49.345,69 €)</auflage>  
    </auflagen>  
    <versandarten>  
      <versandart id="1">per Post</versandart>  
    </versandarten>  
  </listeneintraege>  
</root>

wenn ich das alert auskommentiere, erhalte ich imemr die Sachen, die gemacht werden sollen... nur ändern tut sich im IE überhaupt nichts

woran könnte das liegen?
bzw. wo ist mein Fehler

mfh
Twilo