如何调用"{模型.Foo} updated"模型更新后
How to invoke "{Model.Foo} updated" after model update?
我有一个javascript tmvc模型
/**
* @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:
$.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'来测试没有后端服务器的应用程序,它的工作没有任何问题。
谢谢。
代码应该可以工作。从服务器返回的响应是什么?您应该返回一个JSON响应,其中包含您更新的对象。
你不应该有一个原型更新方法
相关文章:
- 在VanillaJS中模拟模型双向数据绑定
- 铬:“;未捕获的语法错误:意外的标记:"
- 为集合分配大量的模型弹药
- 如何使用backbone.js从集合中获取模型名称
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 检测电话窃听,即:<a href="电话:xxx">在UIWebview上
- 使用“+="操作人员
- //而不是在src=“”上使用http://"属性
- "未捕获的语法错误:意外的标记}"
- 可以<脚本类型=“;text/javascript”>window.location=“/"</
- "实例范围”;TypeScript类的getter/setter
- 骨干模型默认值-todos.js示例中不必要的代码
- EmberJS中支持单字母单词模型
- Javascript复选框函数:;缺少:在属性id之后"
- 将对象设置为Backbone.js模型,而不必调用“;set()"在每一处房产上
- 数据字段=“;时间“;不支持ng模型=“"angularjs
- Backbone.js打印“;函数String(){〔本机代码〕}"而不是模型属性
- 我可以't访问javascript中的变量模型时,我使用"ng列表”;
- 为什么我的javascript Backbone.js模型共享相同的"实例“;他们的父类