gondor: innerHTML bei select-Element funktioniert mit IE7 nicht.

Hi,

folgendes Problem. Ich lade eine selectBox mittel AJAX. Das funktioniert über Firefox und Opera
so wie es sein soll, jedoch streikt (mal wieder) der IE (in Version 7). Als AJAX-Framework wird
prototype eingesetzt...

Hoffe auf Hilfe, zumal ich so langsam am verzweifeln bin.

Hier der Quellcode:

<select style="display: block;" class="updateSizeSelectbox" id="updateSizeSelectbox_<?=$myImageArr['imagenr']?>" name="basket_data[size][<?=$basketlist[$i]['image']?>]">
  <option value="0" ><?=$wording_array['warenkorb']['verwendungszweck_angeben'][$_ENV['language']][0];?></option>
</select>

Javascript:

$('updateSizeSelectbox_'+image).innerHTML = "<option value='3'>xxx</option>";

Der Wert "<option value='3'>xxx</option>" wird nicht übermittelt. Die Box bleibt leer.

Welchen Fehler mache ich?

Danke für Hilfe,

gondor(..)

  1. Hallo,

    folgendes Problem. Ich lade eine selectBox mittel AJAX. Das funktioniert über Firefox und Opera

    uii, Ajax - super!

    Hoffe auf Hilfe, zumal ich so langsam am verzweifeln bin.

    Hier der Quellcode:

    bei mir sieht javascript ganz anders aus. Poste beim nächsten mal lieber den Code, der im Browser ankommt.
    Das ist Quelltext, der interessiert.

    <select style="display: block;" class="updateSizeSelectbox" id="updateSizeSelectbox_<?=$myImageArr['imagenr']?>" name="basket_data[size][<?=$basketlist[$i]['image']?>]">
      <option value="0" ><?=$wording_array['warenkorb']['verwendungszweck_angeben'][$_ENV['language']][0];?></option>
    </select>
    ...

    Welchen Fehler mache ich?

    du schaust nicht nach, welche Eigenschaften deine Elemente haben: http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#select@title=javascript/objekte/htmlelemente.htm#select

    Gruß plan_B

    --
         *®*´¯`·.¸¸.·
    1. Hallo plan_B

      Ob Javascript so aussieht, wie ich es unter Javascript angebenen habe???

      Javascript:

      $('updateSizeSelectbox_'+image).innerHTML = "<option value='3'>xxx</option>";

      Rückgabe alert($('updateSizeSelectbox_'+image).innerHTML);

      XXX</OPTION> da fehlt doch was?

      1. Hallo gondor,

        ich hatte dein Problem missverstanden, dein Code hat mich verwirrt.

        $('updateSizeSelectbox_'+image).innerHTML = "<option value='3'>xxx</option>";

        Rückgabe alert($('updateSizeSelectbox_'+image).innerHTML);

        XXX</OPTION> da fehlt doch was?

        ich habe es mal mit einem anderen IE getestet, und der liefert ähnliche Ergebnisse

          
        sel.innerHTML=  
          "<option value='3'>xxx<\/option>"+  
          "<option value='4'>test<\/option>";  
          
        alert(sel.innerHTML)  
        
        

        liefert: "xxx</option><option value='4'>test</option>"

        die erste Option ist unvollständig.

        nutze statt dessen diese Methode

          
         sel.options[sel.options.length]=new Option("xyz","3");  
         sel.options[sel.options.length]=new Option("text","wert");  
        
        

        Gruß plan_B

        --
             *®*´¯`·.¸¸.·
  2. Hi,

    Welchen Fehler mache ich?

    Du hast nicht in der MS-Doku zu innerHTML nachgeschaut, wo beschrieben ist, wo man innerHTML nur lesend anwenden kann?

    Schlecht, schließlich ist MS der Erfinder von innerHTML ... :)

    ... man darf von daher auch nicht andere Browser hier als Maßstab nehmen.

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!