30-04-2011, 04:36
Witam, ma duzy problem z dodawaniem elementów formularza za pomocą DOM. W innych przegladarkach działa bez problemu, ale w IE oczywiscie nie
musze to naprawic jak najszybciej, proszę o pomoc.
kawałek kodu html:
<form class="formularz" enctype="multipart/form-data" action="wyslij.php" method="post">
<table class="tabela">
<tr>
<td class="kol1">Kategoria:</td>
<td class="kol2"><select name="kat1" size="4">
<option value="" onclick="wypisz(1);">Coś tam</option>
</select>
<select name="kat2" size="4" id="kat2"><option id="a"></option></select>
</td>
</tr>
</table>
a funkcja która po wybrani kategorii w pierwszym select wstawia odpowiednie podkategorie do drugiego selecta:
function wypisz(zmienna){
var elem = document.getElementById("kat2");
if(zmienna==1){
var new_elem = document.createElement("option");
var elem_text = document.createTextNode("cos1");
new_elem.appendChild(elem_text);
new_elem.setAttribute("id", "b");
new_elem.setAttribute("value", "1");
elem.appendChild(new_elem);
var new_elem = document.createElement("option");
var elem_text = document.createTextNode("cos2");
new_elem.appendChild(elem_text);
new_elem.setAttribute("id", "c");
new_elem.setAttribute("value", "2");
elem.appendChild(new_elem);
}
}
Proszę o pomoc bo nie wiem co z tym zrobić.

kawałek kodu html:
<form class="formularz" enctype="multipart/form-data" action="wyslij.php" method="post">
<table class="tabela">
<tr>
<td class="kol1">Kategoria:</td>
<td class="kol2"><select name="kat1" size="4">
<option value="" onclick="wypisz(1);">Coś tam</option>
</select>
<select name="kat2" size="4" id="kat2"><option id="a"></option></select>
</td>
</tr>
</table>
a funkcja która po wybrani kategorii w pierwszym select wstawia odpowiednie podkategorie do drugiego selecta:
function wypisz(zmienna){
var elem = document.getElementById("kat2");
if(zmienna==1){
var new_elem = document.createElement("option");
var elem_text = document.createTextNode("cos1");
new_elem.appendChild(elem_text);
new_elem.setAttribute("id", "b");
new_elem.setAttribute("value", "1");
elem.appendChild(new_elem);
var new_elem = document.createElement("option");
var elem_text = document.createTextNode("cos2");
new_elem.appendChild(elem_text);
new_elem.setAttribute("id", "c");
new_elem.setAttribute("value", "2");
elem.appendChild(new_elem);
}
}
Proszę o pomoc bo nie wiem co z tym zrobić.