Łukasz
Franczak
EAI/ESB Developer
(Tibco / Mule / JEE)
Temat: [JavaScript] Dynamiczne dodawanie pól radio w IE7
Witam, napisałem dwie funkcje do dynamicznego dodawania pól formularza. Formularz zawiera pola typu radio lecz w IE7 nie da się zaznaczyć żadnego z nich. Kombinowałem że może mieć to znaczenie z obsługą onClick w obiektach tworzonych dynamicznie lecz do niczego odkrywczego nie doszedłem. Jeśli ktoś będzie wiedział co z tym robić to proszę o pomoc, bo na IE7 to musi działać.Łukasz Franczak edytował(a) ten post dnia 30.03.11 o godzinie 12:28
<div id="pola" style="width:100%; float:left; text-align:center; position:relative;"> </div>
<script type="text/javascript">
<!-- <![CDATA[ var i = 0; function usungalaz(n) {
if ( n.hasChildNodes() ) {
usungalaz(n.lastChild);
n.removeChild(n.lastChild);
}
i--;
}
function wstaw() {
var input = document.createElement('select');
input.setAttribute('name', 'jezyki[]');
input.setAttribute('id','jezyki');
var input2 = document.createElement('select');
input2.setAttribute('name','jezyki2[]');
input2.setAttribute('id','jezyki2');
var nat = document.createElement('input');
nat.setAttribute('name','native'+i);
nat.setAttribute('type','radio');
nat.setAttribute('value','1');
nat.checked = false;
var nat2 = document.createElement('input');
nat2.setAttribute('name','native'+i);
nat2.setAttribute('value','0');
nat2.setAttribute('type','radio');
nat2.checked = true;
var prz = document.createElement('input');
prz.setAttribute('name','przysiegly'+i);
prz.setAttribute('type','radio');
prz.setAttribute('value','1');
prz.checked = false;
prz.disabled = false;
var prz2 = document.createElement('input');
prz2.setAttribute('name','przysiegly'+i);
prz2.setAttribute('value','0');
prz2.setAttribute('type','radio');
prz2.checked = true;
var br2 = document.createElement('br');
var br = document.createElement('br');
var div = document.createElement('div');
div.setAttribute('id',i);
div.appendChild(input);
div.appendChild(input2);
div.appendChild(br);
div.appendChild(document.createTextNode('\n\n\nNative Speaker: '));
div.appendChild(nat);
div.appendChild(document.createTextNode('Tak'));
div.appendChild(nat2);
div.appendChild(document.createTextNode(' Nie '));
div.appendChild(br2);
div.appendChild(document.createTextNode('Tłumacz przysięgły:'));
div.appendChild(prz);
div.appendChild(document.createTextNode(' Tak '));
div.appendChild(prz2);
div.appendChild(document.createTextNode(' Nie '));
document.getElementById('pola').appendChild(div);
i++;
}
// ]]> --> </script>
<div style="position:relative; width:100%; height:50px; float:left; text-align:center;">
<p style="text-align:center;" >
<a href="#here" onclick="wstaw()">Dodaj</a>
<a href="#here" onclick="usungalaz(document.getElementById('pola'));">Usun</a>
<br/><br/>
</p> </div>