.post加载未定义的图像

时间:2015-04-10 12:07:41

标签: jquery mysql onload

我正在开发一个网站,现在我对一个mysql数据库进行查询,正确返回我需要的所有东西 它返回4行不同的图像,如:
马德里,西班牙,image1
马德里,西班牙,image2
马德里,西班牙,image3
马德里,西班牙,image4

但它设定:
马德里,西班牙,image4
马德里,西班牙,image4
马德里,西班牙,image4
马德里,西班牙,image4

我认为它在设置img.src

之前与下一个循环一致
$.post("include/query.php", {do: "q", q: str}, function(data){ 
        var len = data.length;
        for (var i = 0; i < len; i++) {
            (...)
                $imageid = data[i]['imageid'];
                var image = new Array();
                image[i] = data[i]['image'];
                $desc_cn = data[i]['idescription'];

                if(image[i]!=null){
                    var img = new Image();
                    img.onload = function () {
                       $( "#images_preview" ).append(""+
                            "<div class=\"container\">"+
                                "<div class=\"image\">"+
                                "<img src=\""+image[i]+"\" alt=\""+image[i]+"\">"+
                            "</div>");
                    }
                    img.src = image[i]+"?_="+(new Date().getTime());
                }
        };
    }, "json");

您怎么看?

解决

嗯,Regent给了我一个使用函数的想法。这就是我做的...... 我将整个Image事物放在一个函数中,我称之为每个循环。

for (var i = 0; i < image.length; i++) {
            if (image[i]){
                newImage(str, imageid[i], image[i], desc_es[i]);
            }
        }

0 个答案:

没有答案