将对象传递给onclick on attachment元素

时间:2015-03-03 12:57:36

标签: javascript jquery append

我向DOM添加了几个HTML元素,需要将用于创建元素的对象传递给元素上的onclick函数。

我尝试了以下操作,但该对象始终引用最后一个而不是当前:

function addElementToList(obj){
    var elementHTML = '<li><a href="#">';
    elementHTML += obj.name + '<br>';
    elementHTML += '</a></li>';
    $('#list-canvas .elementList).append(elementHTML);

    $(this).click(function(){
        showDetails(obj);
    })
}

如何将当前元素传递给onclick-function?

1 个答案:

答案 0 :(得分:2)

在这种情况下,最好使用jQuery创建该元素:

var element = $( '<li><a href="#">' + obj.name + '<br></a></li>' );
element.click(function(){
    showDetails(obj);
});
$('#list-canvas .elementList').append(element);