2017-08-02 31 views
0

我已經設置表中的行,每一行有僅名稱[]屬性定義的輸入元件,給ID爲輸入元件至極僅具有名稱屬性

<tr id="1"> 
<td><input name="billdate[]" required="required" class="form-control" placeholder="DD/MM/YYYY"></td> 
<td><input class="form-control" name="amt[]" required="required" value="0" type="text"></td> 
<td><input name="gst[]" class="form-control" value="0" required="required" type="text"></td> 
<td><input name="netamt[]" class="form-control" required="required" value="0" type="text"></td> 
<td><input name="glcode[]" class="form-control" required="required" value="" type="text"></td> 

</tr> 

現在我已經加入的JavaScript代碼來克隆錶行,代碼下面寫

var row = document.getElementById("1"); // find row to copy 
     var table = document.getElementById("asd"); // find table to append to 
     var clone = row.cloneNode(true); // copy children too 
     clone.id = document.getElementById("setid").value; // change id or other attributes/contents 
     table.appendChild(clone); 

克隆工作正常,但問題是,我想assing unque ID給每個輸入元素,有沒有簡單的方法來做到這一點?嘗試了幾種方式添加,但沒有成功。

回答

0

不知道這是你在找什麼。 但循環通過childnodes和獲取輸入元素,然後分配ID似乎做的伎倆。

var row = document.getElementById("1"); // find row to copy 
var table = document.getElementById("asd"); // find table to append to 
var clone = row.cloneNode(true); // copy children too 
clone.id = 'blue';//document.getElementById("setid").value;'' // change id or other attributes/contents 
var children = clone.children 
for(var t = 0 ; t < children.length; t++){ 
     children[t].children[0].id = 'id-'+t; 
} 
//Debugging 
    console.dir(clone); 
    table.appendChild(clone); 
+0

必須根據我的要求做一些更改,但它的工作:) – user3782114

0
function guid() { 
    function s4() { 
    return Math.floor((1 + Math.random()) * 0x10000) 
     .toString(16) 
     .substring(1); 
    } 
    return s4() + s4() + '-' + s4() + '-' + s4() + '-' + 
    s4() + '-' + s4() + s4() + s4(); 
} 

clone.id = guid() 

這不是一個真正的指導,但它應該工作正常。

Create GUID/UUID in JavaScript?

相關問題