В функции ниже chld имеет значение null только в IE, в firefox javascript отлично работает.GetElementById Возвращает Null В IE
var div = document.createElement("div");
var divid = "dv" + num;
div.setAttribute("ID", divid);
div.setAttribute("value", num);
var _text = document.createElement("input");
_text.setAttribute("type", "text");
_text.setAttribute("id", "txtAsName" + num);
_text.setAttribute("name", "txtAsName" + num);
var lbl = document.createElement("label");
var _upload = document.createElement("input");
_upload.setAttribute("type", "file");
_upload.setAttribute("ID", "upload" + num);
_upload.setAttribute("name", "uploads" + num);
_upload.setAttribute("size", "80");
var hyp = document.createElement("a");
//hyp.setAttribute("style", "cursor:Pointer");
hyp.style.cssText='cursor:Pointer';
//hyp.setAttribute("onclick", "return RemoveDv('" + divid + "');");
hyp.onclick=function() {RemoveDv(divid);};
hyp.innerHTML = "Remove";
var br = document.createElement("br");
var _pdiv = document.getElementById("Parent");
div.appendChild(br);
div.appendChild(lbl);
div.innerHTML += ' ';
div.appendChild(_text);
div.innerHTML += ' ';
div.appendChild(_upload);
div.innerHTML += ' ';
div.appendChild(hyp);
_pdiv.appendChild(div);
....
Вот функция удалить
function RemoveDv(obj) {
var p = document.getElementById("Parent");
var chld = document.getElementById(obj);
p.removeChild(chld);
}
Вот что теги DIV выглядят ложь, что я пытаюсь удалить ..
<div align="left" id="Parent">
<div ID="dv1" value="1">
<div ID="dv2" value="2">
....
Интересно даже когда я добавить эту строку кода «ради отладки» chld1 еще нулевой
var chld1 = document.getElementById("dv1");
UPDATE:
Кажется, что нет ничего плохого в самом коде. Если я запустил тот же код, то есть вне моего локального кода, chld будет установлен. Но если я запустил этот код с нашего сервера dev, т.е. не вижу этот элемент.
Любые идеи, почему это может быть?
Когда вызывается 'RemoveDv'? –
Как вы называете свою функцию? Где элемент «Родитель»? – Pointy
Что такое 'obj'? - –