我在div标签中存储了多个表单元素,通过单击按钮可以轻松扩展包含更多字段的表单。 (div中的元素是一种模板) 在我的表单中的另一组元素之前,我必须编辑名称和ID以便稍后区分它们。 所以这是我的函数,在我的表单中添加另一组字段:
function moreFields() {
counter++;
var newFields = document.getElementById('template').cloneNode(true);
newFields.id = '';
newFields.style.display = 'block';
var newField = newFields.childNodes;
for (var i=0;i<newField.length;i++) {
newField[i]=changeNames(newField[i]);
}
var insertHere = document.getElementById('insertHere');
insertHere.parentNode.insertBefore(newFields,insertHere);
return false;
}
在changeNames函数中操作ID和名称,并返回新标记。这在firefox中运行良好,但IE在行newField[i]=changeNames(newField[i]):
处给出以下错误消息。
“对象不支持此属性或方法”
我也尝试过:
tag=changeNames(newField[i]);
newField[i]=tag;
然后错误位于newField[i]=tag;
行。
我该怎么办?非常感谢!