Ajax GET在Chrome控制台中丢失404错误

时间:2013-04-05 18:04:41

标签: jquery ajax google-chrome get http-status-code-404

这不影响我的页面或输出,但我想知道是否有人可以解释为什么会发生这种情况:

这是我的Ajax:

$(document).ready(function(){

$archive = "/videoarchive/";

$.ajax({
  url: "http://mysite.com/videoarchive/",
  cache: false
}).done(function( html ) {
    $div = $('.archive', $(html));
    $img = $div.first().find('img').attr('src');
    $link = $div.first().find('a').attr('href');
    alert($img);
    $('#featureVideo').append('<img src="http://mysite.com/videoarchive/'+$img+'" alt="image" />');
    $('#playVideo').append('<a class="extLink" href="http://mysite.com/videoarchive/'+$link+'" target="_blank" title="fancybox link"><img src="images/playButton.png" alt="image" /></a>');
    $('#archiveLinks').append('');

});

});

一切正常但是当我检查元素并在控制台中查看来自传入HTML的所有图像都添加到我的网站的路径。这是一个例子:

无法加载资源:服务器响应状态为404(未找到)&gt;&gt;&gt; http://mysite.com/webapps/r2ewg/images/diversity_scanline.jpg

我很好奇是否有办法摆脱这些或者如果我坚持使用它们。或者,如果我做错了什么......

在Chrome和IE8中运行良好... 输出只能在Intranet站点的IE8中看到......

如果我能提供更多详情,请告诉我?

2 个答案:

答案 0 :(得分:1)

首先,你应该两次包装HTML吗?而是做:

$div = $('.archive', html);

答案 1 :(得分:1)

可能发生的事情是,当您从ajax调用中获得响应时,您将获得一堆HTML,并且该URL(http://mysite.com/webapps/r2ewg/images/diversity_scanline.jpg)是其中的一部分。

如果将这一块HTML附加到您的DOM,浏览器将尝试抓取该图像。浏览器可能正在尝试加载图像并获得404.它甚至可能与您的jQuery根本没有任何关系。