簡體   English   中英

無法將onclick事件添加到動態創建的按鈕

[英]cannot add onclick event to dynamically created button

我有一個旨在動態創建行項目的腳本。 我的問題是創建最后一個單元格項目,即一個按鈕。 我嘗試使用onclick,setAttribute和attachEvent。 但是要么在創建按鈕的addGarageRow()函數中創建按鈕,要么啟動onclick事件,而不創建按鈕本身的onclick事件

  function addGarageRow(tableID)
   {
     var table=document.getElementById(tableID);

     rownum = rownum + 1;
     var rowCount=table.rows.length;
     var row=table.insertRow(rowCount);

     var cell1=row.insertCell(0);
     var element1=document.createElement("input");
     element1.type="checkbox";
     element1.name="chk[]";

     cell1.appendChild(element1);


     var cell2=row.insertCell(1);
     var element2=document.createElement("input");
     element2.type="text";
     element2.id=rownum;
     element2.name="garage_for[]";

     cell2.appendChild(element2);

    var cell3=row.insertCell(2);
    var element3=document.createElement("input");
    element3.type="text";
    element3.id="amount"+rownum;
    element3.name="garage_amount[]";
    cell3.appendChild(element3); 

    var cell4=row.insertCell(3);
    var element4=document.createElement("input");
    element4.setAttribute("type", "button");
    element4.id=rownum;
    //element4.name="voucher";
    //element4.onclick = alert("test");
    //element4.setAttribute("onClick", alert("test");
    //element4.attachEvent('OnClick',Hi());
    cell4.appendChild(element4);

 }

處理程序應包裝在函數中。 即:

element4.onclick = function(){
   alert("test");
}

onclick事件在function塊內觸發時,您必須包裝要執行的function 在這里查看: http : //jsfiddle.net/qbhfdkq3/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM