Ckick创建了一个表格的td,我为其制作了内容代码

时间:2016-03-22 23:27:06

标签: jquery html

我需要知道如何根据对象点击td表或按钮并执行更多操作,这是我的代码:

$(document).ready(function(){
$("#DTablas").draggable();
$("#btctable").click(function(){
   creatabla(4,6);
});
function creatabla(to,tn){
    var i=0,j=0,headers="",bodyes="",hid="",bid="";
    while(j<=tn){
        if(j===0){
            for(i;i<=to;i++){
                /*se hara la linea de los headres*/
                if(i===0){
                    headers="<thead><tr>" + "<th id='h" + i + "'>" + "<button type='button' id='bttH" + i + "'>" + "H" + i + "</button></th>";
                }else if(i===to){
                    headers=headers + "</tr></thead>";
                }else{
                    headers=headers + "<th id='h" + i + "'>" + "<button type='button' id='bttH" + i + "'>" + "H" + i + "</button></th>";
                }
            }
            i=0;
            j++;
            bodyes="<tbody>";    
        }else{
            for(i;i<=to;i++){
                if(i===0){
                    bodyes=bodyes + "<tr><td id='" + "bd" + i + "'>" + "BD" + i + "</td>";
                }else if(i===to){
                    bodyes=bodyes + "</tr>";
                }else{
                    bodyes=bodyes + "<td id='" + "bd" + i + "'>" + "BD" + i + "</td>";
                }
            }
            j++;
            i=0;
        }
    }
    bodyes=bodyes + "</tbody>";
    /*parte de al final*/
    $("#tresps").append(headers);
    $("#tresps").append(bodyes);
}
$("td[id^='btth']").click(function(evt){
    var tar=evt.target;
    alert("el id del botón es: " + tar.id);
    evt.stopPropagation();
});

}); 无论是否使用按钮

都无效

我需要点击&lt; td&gt;按钮或&lt; td&gt; ,请帮忙

1 个答案:

答案 0 :(得分:0)

您似乎正在向DOM添加动态内容,您还希望捕获事件。
使用$(selector).click(//...,您只需为所有现有元素添加处理程序。当您想要收听与您的选择器匹配的所有事件时,即使在您注册事件后添加了元素,您也必须这样做:

$(selector).click(function(...) { ... });
// becomes
$(selector).on("click", function(...) { ... });