为什么这样做:
el = document.getElementById('STR');
if( el ){
el.checked = true;
el2 = el.cloneNode(false);
el.parentNode.insertBefore(el2, el);
el2.setAttribute('id','');
el2.setAttribute('disabled','disabled');
el2.removeAttribute('name');
el.removeAttribute("disabled");
el.style.display="none";
}
但这不是:
el = document.getElementById('STR');
if( el ){
el.checked = true;
el2 = el.cloneNode(false);
el.parentNode.insertBefore(el2, el);
el2.setAttribute('id','');
el2.setAttribute('disabled','disabled').removeAttribute('name');
el.removeAttribute("disabled");
el.style.display="none";
}
在Firefox / Chrome中,最后一个代码段完美无缺。
答案 0 :(得分:2)
这实际上并不适用于我所知道的任何浏览器。 DOM“setAttribute()”函数在Firefox和Chrome中返回undefined
(也可能是IE)。
如果您愿意,可以在JavaScript中执行“链接”代码样式,但它需要某种框架才能显式实现它。 DOM方法通常不会那样工作。