javascript - JQuery点击attr ('src')返回未定义

标签 javascript jquery knockout.js

图像从 ko.observableArray 加载

<ul data-bind="foreach: images">
<li>
    <div class="photo">
        <h2></h2>
        <img data-bind="attr:{src: '/images/'+path}, click: $root.addImageUrl">
    </div>
</li>

单击图像后,我想获取图像 src 并将其添加到另一个 ko.observableArray 我有以下脚本

self.addImageUrl = function () {
    var src = $("img",this).attr('src');
    self.selectedImages.push(src);
};

但返回未定义。

最佳答案

您使用这个是错误的。在 addImageUrl 函数中,this 不是元素。我可以建议您改用 img 对象(它没有显式传递给函数):

self.addImageUrl = function (img) {
    var src = '/images/' + img.path;
    self.selectedImages.push(src);
};

Demo

关于javascript - JQuery点击attr ('src')返回未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22094010/

相关文章:

javascript - iPad : when using swipe event the entire page is moving

javascript - 下划线动态链接

javascript - 安装 expo 包失败,错误为 : yarnpkg exited with non-zero code: 1 yarnpkg exited with non-zero code: 1

javascript - 离线加载本地JSON文件

javascript - 我如何每 5 秒随机淡入/淡出一些 div

javascript - 如何更改knockout.js中数组的值?

javascript - 仅订阅新条目或已删除条目的可观察数组

Javascript 匿名函数 - 定义

javascript - Raphael JS - 使用 SVG 文件

javascript - 淡出所有同名的 id