Model event
http://stackoverflow.com/questions/12051775/backbonejs-object-object-has-no-method-apply-when-setting-model-attribute#comment16092817_12051775
by fguillen
HTML
<script src="http://documentcloud.github.com/underscore/underscore.js"></script>
<script src="http://documentcloud.github.com/backbone/backbone.js"></script>
JavaScript
var Box = Backbone.Model.extend({
initialize: function() {
this.on( "change:status", this.hasChanged, this);
},
hasChanged: function() {
console.log( "I changed", this.get( "name" ), this.get( "status" ) );
}
});
var BoxList = Backbone.Collection.extend({
model: Box,
boxStatusChanged: function() {
boxes.each( function( model ) {
model.set({status: "changed"});
});
},
});
var boxes = new BoxList();
var box1 = new Box({ name: "box 1", status: "init" });
boxes.add( box1 );
var box2 = new Box({ name: "box 2", status: "init" });
boxes.add( box2 );
boxes.boxStatusChanged();