За последние 24 часа нас посетил 16701 программист и 1694 робота. Сейчас ищут 829 программистов ...

Проблема select innerHTML

Тема в разделе "JavaScript и AJAX", создана пользователем adamsalex, 2 апр 2012.

  1. adamsalex

    adamsalex Активный пользователь

    С нами с:
    2 апр 2012
    Сообщения:
    1
    Симпатии:
    0
    Добрый день, не работает innerHTML в IE. Погуглил в итоге необходимо переписать с помощью DOM -не могу до конца понять как.
    Суть необходимо - из БД mySQL запросами через AJAX получать в select значения (асинхронно). В комментарии кода "строим DOM" насколько я понял не хватает каких то параметров. Если так запускать то в select выводиться вся HTML страница.

    Index.html
    Код (Text):
    1.  
    2. //функция получения названия фирм из БД
    3. function showFirm(str)
    4. {
    5. if (str=="")
    6.   {
    7.   document.getElementById("parts_firm").innerHTML="";
    8.   return;
    9.   }
    10. if (window.XMLHttpRequest)
    11.   {// code for IE7+, Firefox, Chrome, Opera, Safari
    12.   xmlhttp=new XMLHttpRequest();
    13.   }
    14. else
    15.   {// code for IE6, IE5
    16.   xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    17.   }
    18. xmlhttp.onreadystatechange=function()
    19.   {
    20.   if (xmlhttp.readyState==4 && xmlhttp.status==200)
    21.     {
    22.     // строим DOM
    23.     var para = document.createElement("option");
    24.     var txt = document.createTextNode(xmlhttp.responseText);
    25.     para.appendChild(txt);
    26.     document.getElementById('parts_firm').appendChild(para);
    27.    
    28.         //Через innerHTML не работает в IE
    29.                 //document.getElementById("parts_firm").innerHTML=xmlhttp.responseText;
    30.     }
    31.   }
    32. xmlhttp.open("GET","load_form_ajax.php?t="+str,true);
    33. xmlhttp.send();
    34. }
    35. ......
    36. <td>Производитель:</td>
    37.             <td>
    38.             <!-- передаем в select id="parts_firm" инфо из БД, запускаем showModel() -->
    39. <select id="parts_firm" name="firm" onchange="showModel(this.value)">
    40. <option></option>
    41. </select>