model.fetch总是要进行错误回调

时间:2011-08-12 12:27:13

标签: backbone.js

var mdl = Backbone.Model.extend({
            defaults:{
                url:'/displayPostVariables.php',
                age:0
            },
            initialize:function(opt){                   
                this.url = function (){
                    return opt.url
                }
            }
        })
        mdli = new mdl({
            'name' :'rajkamal'
        })

        jQuery.ajaxSetup({
            'beforeSend': function(xhr) {
                xhr.setRequestHeader("Accept", "text/html")
            }
        })
        mdli.fetch({
            success : successcallback,
            error:errorcallback

        });

Ajax调用正在进行,但总是以错误回调结束。 看起来像这篇帖子model.fetch success callback does not fire on firefox, but works on chrome,但其中没有javascript代码。

感谢。

5 个答案:

答案 0 :(得分:2)

尝试将dataType:'json'传递给fetch。

答案 1 :(得分:2)

我遇到了同样的问题,fetch只返回我的错误回调。

最后,这是因为我没有在服务器上的对象中指定一个id,如下所示:

{"title":"The Green Mile ","author":"Stephen King","img":"green_mile.jpg","id":2}

我认为Backbone期望JSON中存在某些属性,但我无法找到任何关于此的文档。我解决它的方法是做model.save()并查看正在保存的对象。

答案 2 :(得分:0)

作为参考,我有同样的问题,因为不安全的方法错误地将NaN注入json响应     { “进步”:为NaN} 无法正确解析并强制错误回调

答案 3 :(得分:0)

我遇到了这个问题,原因是在API的JSON响应中使用单引号而不是双引号括起属性和值。

答案 4 :(得分:0)

指定默认值以外的网址

= Backbone.Model.extend({
url : "/displayPostVariables.php",
defaults:{

},
validation: {

      }

});