Javascript 尝试使用ajax查找图像时经常出错?
在我开始之前,我只是想说我知道,但答案不清楚,我没有足够的声誉来评论要求澄清的问题。所以我对此道歉 无论如何,我的问题(和代码)与上面链接中的问题非常相似(但不完全相同)。我试图将每个图像的名称读入一个数组,以后可以读入该数组,但每次运行脚本时,它都会返回一个错误Javascript 尝试使用ajax查找图像时经常出错?,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,在我开始之前,我只是想说我知道,但答案不清楚,我没有足够的声誉来评论要求澄清的问题。所以我对此道歉 无论如何,我的问题(和代码)与上面链接中的问题非常相似(但不完全相同)。我试图将每个图像的名称读入一个数组,以后可以读入该数组,但每次运行脚本时,它都会返回一个错误 var images = new Array(30); //I already know there are 30 pictures var i = 0; $.ajax({ url: "projects/pj", s
var images = new Array(30); //I already know there are 30 pictures
var i = 0;
$.ajax({
url: "projects/pj",
success: function(data){
alert("success");
$(data).find("a:contains(.jpg), a:contains(.JPG), a:contains(.png), a:contains(.PNG), a:contains(.gif), a:contains(.GIF)").each(function() {
images[i] = $(this).attr("href");
i++;
});
},
error: function(jqXHR, textStatus, errorThrown){
alert("error");
}
});
文件夹“projects”与脚本位于同一目录中,这一点很清楚
非常感谢你的帮助
编辑:我只是想补充一下,我以前使用过这种技术来获取图片名称,但我没有尝试将它们放入数组,我只是将它们添加到列表中
$.ajax({
url: "content/images",
success: function(data){
$(data).find("a:contains(.jpg), a:contains(.JPG), a:contains(.png), a:contains(.PNG), a:contains(.gif), a:contains(.GIF)").each(function() {
var images = "content/images/" + $(this).attr("href");
$('#container ul').append('<li></li>');
$('<img>').attr("src", images).appendTo($('li').last());
});
$('#container ul li').first().addClass('active');
}
});
$.ajax({
url:“内容/图像”,
成功:功能(数据){
$(数据).find(“a:contains(.jpg)、a:contains(.jpg)、a:contains(.png)、a:contains(.png)、a:contains(.gif)、a:contains(.gif)”).each(函数(){
var images=“content/images/”+$(this.attr(“href”);
$('#container ul')。追加('');
$('
这一个有效。不确定为什么这一个有效,而我要问的那个无效。您需要一个用于ajax请求的Web服务器。仅从文件使用您的网站://
将无效
通常,访问error
回调意味着出现了网络错误,而不是代码错误(显然,除非您从代码生成路径)
这就是为什么你应该尝试查看“网络”选项卡,然后检查这些请求是否失败,以及原因。它到底返回了什么错误?是您从错误警报功能返回的错误还是其他错误?以后进入数组是什么意思?
Ajax是异步的,所以听起来您可能试图在Ajax完成之前访问数组。演示如何使用数组图像
,并详细解释错误detail@ChadWatkins:它给了我在错误函数中设置的警报。@charlietfl基本上,我正在尝试创建图像名称数组,以便我可以将其中一个指定为脚本后面页面中某个元素的背景图像。我认为您应该查看“网络”选项卡。这很可能是出错的地方。有没有一种方法可以在不使用ajax的情况下完成我想做的事情?这可能不是一个好主意。安装Web服务器是否因为某种原因而不可能?我肯定这不是不可能的,我只是不知道你的意思。不,没有ajax你无法完成你想做的事情。你不使用ajax有什么原因吗网络服务器?我不知道你说的“使用网络服务器”是什么意思。比如,把文件放在什么地方?