保存后Backbonejs和Zepto错误:未捕获TypeError:无法使用'in'运算符在1中搜索'id'

时间:2011-12-10 01:45:17

标签: backbone.js zepto

在我的Backbone应用程序中,我能够列出记录,点击一条记录查看详细信息,一切正常。

但是,当我更改模型并调用save()方法时,我得到以下错误。数据保存在后端,但Collection不会获得更新。

Uncaught TypeError: Cannot use 'in' operator to search for 'id' in 1
_.extend.setbackbone.js:205
_.extend.save.options.successbackbone.js:300
ajaxSuccesszepto.js:881
$.ajax.xhr.onreadystatechangezepto.js:1085

任何提示?

TKX Wils的

3 个答案:

答案 0 :(得分:3)

我最近遇到了同样的问题。事实证明,我从服务器返回了带有引号的json数据。一旦我解决了这个问题,错误就消失了。

答案 1 :(得分:0)

我遇到了同样的问题,因为它没有将AJAX数据类型设置为json,而是设置为text

答案 2 :(得分:0)

返回的数据用引号括起来。只需通过parseJSON解析数据并使用它。

var jsondata = $.parseJSON(data);
$.each(jsondata, function (index, file) {
  //your code goes here                     
});