Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未能加载资源+;$。Chrome中的ajax调用_Javascript_Jquery_Ajax_Google Chrome - Fatal编程技术网

Javascript 未能加载资源+;$。Chrome中的ajax调用

Javascript 未能加载资源+;$。Chrome中的ajax调用,javascript,jquery,ajax,google-chrome,Javascript,Jquery,Ajax,Google Chrome,我在Chrome和AJAX方面遇到了一个非常奇怪的问题,我有一个自动完成表单,它已经工作了一段时间。今天早上我启动了VisualStudio,但它不再工作了。如果我使用Firefox或IE,它在生产中(使用Chrome)运行良好,在本地也运行良好,但对于Chrome,它没有 我得到一个错误: 无法加载资源 在开发人员工具中,当我在错误上展开时,我得到: f.support.ajax.f.ajaxTransport.sendjquery-1.7.1.min.js:4 f.extend.ajaxjq

我在Chrome和AJAX方面遇到了一个非常奇怪的问题,我有一个自动完成表单,它已经工作了一段时间。今天早上我启动了VisualStudio,但它不再工作了。如果我使用Firefox或IE,它在生产中(使用Chrome)运行良好,在本地也运行良好,但对于Chrome,它没有

我得到一个错误:

无法加载资源

在开发人员工具中,当我在错误上展开时,我得到:

f.support.ajax.f.ajaxTransport.sendjquery-1.7.1.min.js:4
f.extend.ajaxjquery-1.7.1.min.js:4
$.autocomplete.sourceCreate:217
a.widget._searchjquery-ui-1.8.17.custom.min.js:127
a.widget.searchjquery-ui-1.8.17.custom.min.js:127
(anonymous function)jquery-ui-1.8.17.custom.min.js:127
我在服务器上的回调函数中放置了一个断点,但它甚至无法到达服务器。错误肯定在客户端,以下是客户端代码:

$("#LocationTxt").autocomplete({
            minLength: 4,
            source: function (req, resp) {
                $.ajax({
                    type: "GET",
                    url: "/Ad/SearchLocations",
                    data: "term=" + req.term,
                    contentType: "application/json; charset=utf-8",
                    success: function (data) {
                        resp($.map(data, function (value, key) {
                            return { data: value, label: data[key].Name, value: data[key].Name };
                        }));
                    }, 
                   error: function (data) {
                       alert(data.statusText);
                   }
                });
            },
            select: function (e, ui) {
                var cityId = ui.item.data.Id;
                $('#AdListing_LocationID').val(cityId);
            }
        });

此外,还会触发错误事件,statusText属性只是“error”。不是很有帮助。我正在运行Chrome版本:17.0.963.46(我的最新版本是2012年2月9日)。我相信我的Chrome在今天早上启动电脑时更新了,但我不确定。我的chrome何时更新有日志记录吗

如果您正在处理代码的本地副本,请确保您是在web服务器(如localhost)中工作的。如果您直接从文件系统工作,出于安全原因,google chrome将不允许您对文件系统上的文件发出ajax请求

还有几件事

删除此项:

contentType: "application/json; charset=utf-8",
您没有发送json,而是发送GET请求。相反,添加这个

dataType: "json",
因此jQuery希望接收json


使用适当的字符集将contentType设置为
application/json
,这也可能有助于服务器返回头将contentType设置为
utf-8

我在IIS中进行了设置,在Visual Studio中我使用了“使用自定义Web服务器”选项,因为我想为图像创建一个虚拟目录,我没有直接使用文件系统。酷。所以它没有发送任何东西?当您通过开发人员控制台手动触发它时会发生什么?如果它从未被调用,那么可能是调用它的代码?所以我接受了你的建议并手动运行了它,但它仍然不起作用。但后来我决定比较IE/Firefox和Chrome的不同之处。我发现当我禁用广告拦截器插件时,它工作了!。我猜有一个插件的更新破坏了代码或它的黑名单,因为我填写的表单创建了一个“广告”,所以我的很多javascript对象名等都有“广告”一词。真奇怪,谢谢你的帮助!