You're altering a list of elements (listView.collection.remove(item)
) while iterating over it, which usually leads to Bad Things™ Here's a simplified test case : http://jsfiddle.net/nikoshr/Xx9uw/
Either clone your list of models before removing them:
_.each(_.clone(listView.collection.models), function (item) {
console.log("Removing model cid:" + item.cid);
listView.collection.remove(item);
});
http://jsfiddle.net/nikoshr/Xx9uw/2/
Or use collection.reset
:
listView.collection.reset();