【问题标题】:Pass object to onclick on appended element将对象传递给 onclick 附加元素
【发布时间】:2015-03-03 21:00:05
【问题描述】:

我将几个 HTML 元素附加到我的 DOM,并且需要将用于创建元素的对象传递给元素上的 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 函数?

【问题讨论】:

    标签: javascript jquery append


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-09
      • 2017-11-10
      • 1970-01-01
      • 2014-06-14
      • 2019-04-12
      • 2020-12-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多