我正在向我的服务器发送ajax请求,以更新那些数据。请求与jquery的get
函数一起发送。在成功的时候我想要执行一些动作,但不幸的是整个操作都失败了,因为服务器没有响应,即使firebug清楚地显示200状态:
而且,当我用浏览器输入这个地址时,一切看起来都很好。任何想法为什么它可能无法正常工作?这是我的js:
$(".interests-delete").live("click", function(){
var id = $(this).attr('title');
var user_id = "100000717262400";
$.ajax({
type: "GET",
url: "http://dev1.gecoloco.com/rte/ilike.php?",
data: "u=" + user_id + "&d=" + id,
dataType: "json",
success: function(response, status){
alert(status);
console.log(response);
getLikes();
}
});
return false;
});
答案 0 :(得分:1)
很可能是由于“同源策略”要求你的html应该来自发出ajax调用的同一个域。尝试不是从文件系统加载你的html页面,而是通过服务于ajax调用的同一服务器加载。会工作的。
答案 1 :(得分:0)
你的网址在那里看起来有点滑稽。部分:“?& u = ...”应为“?u = ......”
答案 2 :(得分:0)
您的成功功能可能有问题。您可能会收到回复,但是您的javascript在您的函数中崩溃了。
答案 3 :(得分:0)
我之前在浏览器中从本地文件系统打开页面时遇到过这种情况,例如: file:///C:/Users/Eason/Desktop/mailer/index.html
。
当此页面尝试发出AJAX请求时,会导致该问题。当它在Web服务器(例如Tomcat)上发布时,它将起作用。
这是浏览器中的安全限制,用于防止不安全的跨域通信。