点击事件添加到附加的html;元素没有按预期工作

时间:2015-11-16 10:43:27

标签: javascript jquery

好的我确定我做的是一些简单的根本错误但我无法自己解决这个问题。我已经尝试使用Google搜索和搜索此论坛并阅读jquery文档的相关部分。

如果您需要任何进一步的信息,请告诉我。非常感谢提前。

我要做的是:

我有一张表格,其中显示了各种测试的详细信息,其中有一个按钮可用于新测试。由于每个测试都包含几行表格,因此我在隐藏的div中有一个模板,我将其克隆并附加到实时表格中。为了唯一性,我使用jquery基于变量整数添加适当的类和id。我还尝试将click事件添加到其中一个表格单元格中的图像中,以删除与该特定测试相关的行。

我目前的职能

function newTest(sampleID){
    var testID = $("#testCount").val();
    $("#newTest tr").clone(true)
        .addClass("test"+testID)
        .appendTo("#testsTable"+sampleID);
    $(".newdelbox:first")
        .attr("id","testDelete"+testID)
        .addClass("delbox")
        .removeClass("newdelbox");
    $(".test"+testID).on('click',"#testDelete"+testID,delSample(testID));
    testID++;
    $("#testCount").val(testID);
}

我需要做什么

单击图像时要调用的函数。

发生了什么

仅在分配脚本(未单击)时才调用函数。单击后,函数不会随后运行。我在控制台中看不到任何错误。

我尝试了什么

链接到代码前面:

.click(delSample(testID));
.on("click",delSample(testID));
.bind("click",delSample(testID));

作为功能内的新行:

$(".test"+testID).on('click',"#testDelete"+testID,delSample(testID));
document.getElementById("testDelete"+testID).onclick(delSample(testID));
document.getElementById("testDelete"+testID).addEventListener("click",delSample(testID),false);

2 个答案:

答案 0 :(得分:0)

我不知道你的HTML,但我喜欢像

这样的东西
.on("click",function(){
   var current_id = jQuery(this).attr('id');
   delSample(current_id);
});

找到你的身份

答案 1 :(得分:0)

试试这个:

 .click(function(){
  delSample(testID);
  });

OR

.on("click",function(){
   delSample(testID);
  });