jQuery ajax函数返回错误

nXu*_*nXu 7 ajax jquery post

说实话,我是jQuery的初学者,现在我被卡住了.我想将数据从我的HTML表单发送到php,它将数据添加到数据库并返回一些我想在原始HTML上显示的值.这是我的代码:

$.ajax({
  type: "POST",
  url: "http://mysite.com/process.php",
  data: { data: mydata },
  cache: false,
  dataType: "text",
  error: function(jqXHR, textStatus, errorThrown){
        alert(jqXHR.status);
        alert(jqXHR.statusText);
        alert(jqXHR.responseText);
    },
  success: function(data){
        getContentBox().innerHTML = data;
}
});
Run Code Online (Sandbox Code Playgroud)

它返回一个jqXHR对象,其中status= 0,statusText="error"并为空responseText.但是,我的php似乎工作,我看到我的数据插入我的数据库.我究竟做错了什么?

任何帮助,将不胜感激.提前致谢!

编辑:Chrome控制台说XMLHttpRequest无法加载http://mysite.com/data.php.Access-Control-Allow-Origin不允许使用原点http://www.mysite.com.

nXu*_*nXu 1

ShelbyZ 的评论让我找到了解决方案:

当我尝试使用绝对 URL 时,浏览器拒绝执行请求,我必须将其写为相对 URL。

$.ajax({
  type: "POST",
  url: "process.php",
  data: { data: mydata },
  cache: false,
  dataType: "text",
  error: function(jqXHR, textStatus, errorThrown){
        alert(jqXHR.status);
        alert(jqXHR.statusText);
        alert(jqXHR.responseText);
    },
  success: function(data){
        getContentBox().innerHTML = data;
}
});
Run Code Online (Sandbox Code Playgroud)

谢谢!