尝试克隆表单并增加克隆的ID

时间:2012-12-25 20:44:24

标签: javascript html5 clone

function moreFields() {
     counter++;
     var newFields = document.getElementById("input").cloneNode(true);
     newFields.id = counter;
     newFields.style.display = 'block';
     var newField = newFields.childNodes;
     for (var i=0;i<newField.length;i++) {
         var theName = newField[i].id;
         if (theName) {
             newField[i].id = theName + counter;
            }
        }
     var insertHere = document.getElementById("buttons");
     insertHere.parentNode.insertBefore(newFields,insertHere);
}

function clear() {
     var count = counter;
     while (count>0) {
         var pricetxt = document.getElementById('price'+count);
         pricetxt.value = "";
         var qtytxt = document.getElementById('qty'+count);
         qtytxt.value = "";
         count--;
        }
}

这是页面的jsfiddle

http://jsfiddle.net/xjsc16x/TctQx/1/

抱歉,我知道它很大但我无法弄清楚出了什么问题。 moreFields函数正确复制字段(只有2个文本框),但我不确定它是否正在实现递增ID。

我认为我有明确的功能正确但它无法读取ID? 有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:2)

更改clear()的名称并且有效。你遇到了一个javascript保留字,clear是一个窗口方法

DEMO:http://jsfiddle.net/TctQx/3/