在javascript中将图片放入数组中

时间:2011-12-04 15:40:50

标签: javascript jquery asp.net

我是javascript的新手,我的意思是我知道语法,但不是那么多的库。

我需要一些帮助才能将文件夹中的某些文件(图片)转换成arry让我们说:

var[] pictures = ?;

(该文件夹在我的项目中并包含一些图片)

所以我可以循环它们并在页面上显示我做了一些搜索,但我找不到任何有关如何执行此操作的指南。

我真的想要了解如何为未来的项目做到这一点,即使是已知guid的链接,你们知道我们会有很大的帮助。

如果它有助于我使用asp.net。

2 个答案:

答案 0 :(得分:3)

嗯,有很多方法可以解决这个问题,对我来说,你可以做的是(如果你事先不知道图像的位置)做一个返回每个图像的src的服务,存储在一个数组中,然后在页面中显示它们。

我相信你正在使用jQuery,所以你可以这样做ajax request

jQuery.ajax({
     url: /*path to*/"Service.asmx/getSources"
     //options, check documentation
});

然后,从asp,创建一个新服务(在我的情况下为Service.asmx)并创建一个返回图片位置的方法(在我的例子中,该方法称为getSources

我建议您使用JSON(和jQuery.getJSON()方法),以便返回List<string>

最后,您可以在数组中迭代或存储源代码,我将使用getJSON方法提供示例

var sources = []
jQuery.getJSON("Service.asmx/getSources", function(data) {
    for(var i = 0, len = data.length; i<len ; i++) {
      sources.push(data[i]);//store every source in the array
    }
});

获得资源后,您可以将其显示为this fiddle

告诉我它是否有帮助,或者您是否需要其他解决方案。

答案 1 :(得分:1)

如果您想要一组图片只是稍后显示它们,您只需使用:

var sources = [
    "path/to/yourImage1.jpg",
    "path/to/yourImage2.jpg",
    // ...
    "path/to/yourImageN.jpg",
];

var pics = [];
for(var i = 0; i < sources.length; i++) {
    var pic = new Image();
    pic.src = sources[i];
    pics[i] = pic;
}