Jquery总是从div中包含的图像列表中获取第一个图像的值

时间:2012-11-21 12:25:01

标签: jquery

我需要从src中包含的图片列表中获取图片div值,并将该值传递给文本框。

我已经研究过这个例子,但它总是得到第一张图片的值,而不管你点击哪张图片。

http://jsfiddle.net/FMW22/

如何修改脚本以便始终获取单击该文本框的图像的src

3 个答案:

答案 0 :(得分:3)

这是因为您的选择器位于#imgListContainer,并使用$(this).find("img")选择图像。

您需要将选择器更改为#imgListContainer img,将img声明更改为$(this)


将您的代码更改为:

$(document).on("click", "#imgListContainer img", function(){
    var img = $(this), // select images inside .container
        len = img.length; // check if they exist
    if( len > 0 ){
        // images found, get id
        var attrID = img.attr("src"); // get id of first image
       // alert(attrID);
        $("#Text1").val(attrID);
    } else {
        // images not found
    }
});​

演示:http://jsfiddle.net/FMW22/1/

答案 1 :(得分:1)

$(document).on("click", "img", function(){
    $("#Text1").val($(this).attr("src"));
});

答案 2 :(得分:1)

简化:

$("#imgListContainer").on("click", "img", function() {
    $("#Text1").val(this.src);
});​

DEMO: http://jsfiddle.net/FMW22/2/