我有一种方法可以将图像添加到TD并将click事件附加到图像上。我正在动态构建一行,并希望将TD图像列附加到我的行。
$("<tr></tr>").append(addActionColumn($("<td></td>")));
这是我的addActionColumn方法:
function addActionColumn(td) {
var actionImage = document.createElement("img");
$(actionImage).attr("src", "../Images/cross_red.JPG");
// delete the row
$(actionImage).click(function() {
$(td).parent().remove();
});
$(td).append(actionImage);
}
由于某种原因,TR永远不会将图像列附加到它上面。
答案 0 :(得分:2)
您的函数不会返回您创建的td元素。
答案 1 :(得分:1)
我会做这样的事情:
var td = $('<td />');
$('<img />').addClass('close-button').prop('src', '../Images/cross_red.JPG').appendTo(td);
$('<tr />').append(td).appendTo('#your_parent_element');
$('.close-button').on('click', function() {
$(this).parent().remove();
});
答案 2 :(得分:1)
我认为这是因为你试图.append
addActionColumn
的结果为null,因为你没有在函数中返回一个值。
在函数结束时尝试这样的事情:
return $(td);