我有一个 javascriptMVC 模型
/**
* @class Hzfrontend.Models.Warmwasser
* @parent index
* @inherits jQuery.Model
* Wraps backend warmwasser services.
*/
$.Model('Hzfrontend.Models.Warmwasser',
/* @Static */
{
findAll: "/api/warmwasser",
findOne : "/api/warmwasser/{id}",
update : "/api/warmwasser/{id}"
},
/* @Prototype */
{
update : function(attrs, success, error){
$.ajax({
type: 'PUT',
url:"/api/warmwasser/"+this.id,
data: $.toJSON(this),
success: success,
error: error,
dataType: "json"});
}
});
和一个控制器:
$.Controller('Hzfrontend.Warmwasser.List',
/** @Static */
{
defaults : {}
},
/** @Prototype */
{
init : function(){
this.element.append(this.view('init',Hzfrontend.Models.Warmwasser.findAll()) )
},
'.waterTemperature change': function( el ){
var mod = el.closest('.warmwasser').model();
mod.attr('waterTemperature', el.val());
mod.update();
steal.dev.log("update waterTemperature");
},
"{Hzfrontend.Models.Warmwasser} updated" : function(Warmwasser, ev, warmwasser){
warmwasser.elements(this.element)
.html(this.view('warmwasser', warmwasser) );
steal.dev.log("updated");
}
});
更新完成后,我想在控制器中调用更新的回调。这个怎么做?如果我使用 ./fixtures/fixtures.js' 在没有服务器后端的情况下测试应用程序,它可以正常工作。
谢谢。