2013-08-19 62 views
0

我想知道刪除appendchild添加的行的語法。JAVASCRIPT removeRow()函數

還有一個removechild,但我不知道如何操作。

<input type="button" id='submitlink' value="ADD_AGENDA" onClick="generateRowAgenda()" name="AGENDA"/> 
<input type="button" id='submitlink' value="" onClick="removeRow()" name="AGENDA"/> 

<script language=""> 
function generateRowAgenda() { 

    var temp ="<p><input type='text' class='textinputagenda' name='MM_AGENDA[]'></p>"; 
    var newdiv = document.createElement('AGENDA'); 
    newdiv.innerHTML = temp; 
    var yourDiv = document.getElementById('AGENDA'); 
    yourDiv.appendChild(newdiv); 
} 

function removeRow(){ 
    yourDiv.appendChild.deleteRow(newdiv); 
} 



</script> 

<br> 
<div id="AGENDA" align="center"></div> 

回答

0

這將是:

function removeRow(element){ 
    element.parentNode.removeChild(element); 
} 
removeRow(newDiv); 

也就是說,removeChild方法實際上屬於元素的,所以你需要先引用父(通過使用parentNode),然後調用方法removeChild通過newDiv元素。

此外,您有兩個具有相同ID的元素:submitlink。這並不好。

如果您重命名元素,則可以添加一個調用removeRow函數的偵聽器。

<input type="button" id='doremove' value="" onClick="removeRow()" name="AGENDA"/>

(現在iddoremove

現在做這樣的事情做出要在點擊執行removeRow功能:

document.getElementById('doremove').addEventListener('click', function(e) { 
    removeRow(newDiv); 
}); 

這裏是的jsfiddle一個例子: http://jsfiddle.net/5TmQC/

你會注意到刪除o只適用於一個議程項目。你想與幾個議程一起工作?

試試這個,然後:http://jsfiddle.net/5TmQC/1/

幾乎相同的代碼,但是這可以通過使用pop()

+0

感謝您的及時回覆刪除多個,爲了!這正是我所期待的。並感謝提示pop()命令。 Appologize,對於removeRow按鈕上的紅寶石ID,它有時可以通過複製和粘貼來實現。 – Bingo

+0

@Luca,我很高興它對你有用。如果此答案有用,請將其標記爲已接受。 –