Backbone.js fetch()不会更改URL

时间:2015-12-25 17:24:03

标签: javascript json backbone.js

我在Backbone.js中有这个代码,我试图动态创建一个URL并从控制器调用一个返回JSON数据的函数。 出于某种原因,在最后执行fetch()方法时,浏览器中的URL不会更改。 我在我的getdata()函数中放了一个console.log来查看调用是否正在发生,而且确实如此。此外,我已经尝试使用最后的参数console.log新的构建URL,并且这也是成功构建的。  任何想法为什么URL在浏览器中没有变化?

谢谢

getUrl: function(celebname){ 
        var urlstr = "http://localhost/Codeigniter/index.php/testcontroller/getdatabasedata?searchvalue="+celebname; 
        return urlstr; 
        },

        events: {
            "click #submitbtn" : "getdata",

          },
          getdata: function (event) { 
            var celebname = $('#celebname').val(); 
            this.model.url = this.getUrl(celebname);
            this.model.fetch();
          },

1 个答案:

答案 0 :(得分:0)

Backbone将始终尝试使用收集网址,因此,如果您想要fetchsave,则应使用新网址明确保存模型。

尝试覆盖模型中的url,如下所示:

var newUrl = this.getUrl(celebname);
this.model.save({}, { url: newUrl});

而不仅仅是设置this.model.url = this.getUrl(celebname);