'未定义'在尝试记录动态添加的元素时

时间:2017-01-18 18:13:43

标签: javascript jquery ajax

我正在使用AJAX生成轮播图像。我的JSON对象看起来像这样。

{
    "src": "../_shared/img/img1.jpg",
    "title": "Image 1",
    "onclick": "get_src()"
}

最终生成HTML就是这个

<img onclick="test()" src="../_shared/img/img1.jpg" alt="Image 1">

现在使用JQuery我试图提醒src值,但它总是返回&#39; Undefined&#39;

function test() {
    alert( $(this).attr('src') );
}

那么如何处理动态添加的元素?

1 个答案:

答案 0 :(得分:2)

为了引用元素,您需要将this引用作为参数传递给函数,否则函数中的this将引用window对象。

<img onclick="test(this)" src="../_shared/img/img1.jpg" alt="Image 1">

function test(ele) {
  alert($(ele).attr('src') );
}