0

我正在跨域进行 AJAX 登录,请求已正确发送并从其他域获得响应,但我的 onSuccess 函数没有被调用。我试过在请求中写 onsuccess 像

sucess : function(){}

但它也没有被调用。

我的代码片段:

new Ajax.JSONRequest(this.preCheckUrl, {
    callbackParamName: "jsoncallback",
    parameters: {
    userEmail: this.userEmail, userPassword: this.userPassword, format: 'json'
  },

  onSuccess:function(response) {
        alert('hello');
  } });

-谢谢。

4

1 回答 1

0

根据文档,您的请求看起来不错。来自README.md

处理故障

由于无法检查我们使用 JSONP 技术发出请求后会发生什么,因此我们不得不对正在发生的事情做出明智的猜测。

此示例向无效 URL 发出请求。由于在默认超时期限(10 秒)内未调用回调,因此请求被“取消”,如果指定,则调用 onFailure 回调。Ajax.JSONResponse 的状态为 504,statusText 为“Gateway Timeout”。

new Ajax.JSONRequest('http://api.flickr.com/services/feeds/asdfasdfasdfasdfasdfsdf', {
  callbackParamName: "jsoncallback",
  parameters: {
    tags: 'cat', tagmode: 'any', format: 'json'
  },
  onCreate: function(response) {
    console.log("2: create", response, response.responseJSON);
  },
  onSuccess: function(response) {
    console.log("2: success", response, response.responseJSON);
  },
  onFailure: function(response) {
    console.log("2: fail", response, response.responseJSON);
  },
  onComplete: function(response) {
    console.log("2: complete", response, response.responseJSON);
  }
});

所以,你应该添加额外的回调,看看出了什么问题。

于 2013-02-13T06:06:23.953 回答