首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >值未更改时触发backbone.js更改

值未更改时触发backbone.js更改
EN

Stack Overflow用户
提问于 2013-04-12 06:07:53
回答 1查看 18.8K关注 0票数 17

backbone.js的一个众所周知的特性是,当您设置未更改的数据时,它不会触发更改事件,也不会经过验证。但是,我需要触发change事件,因为我正在存储来自AJAX调用的JSON响应,该调用存储后端验证的结果。如果用户继续提交表单,同时将相同的字段留空,则后端验证将返回相同的JSON结果,并且当我将其保存到模型时,它不会触发更改事件。

在AJAX success回调中,我尝试了一些将数据设置到模型中的方法:

尝试的解决方案#1

t.model.unset('fieldErrors',{silent: true});
t.model.set({fieldErrors: JSONResponse});

尝试的解决方案#2

t.model.set({fieldErrors: null},{silent: true});
t.model.set({fieldErrors: JSONResponse});

当发出调用并且用户具有相同的JSONResponse时,这两种方法都不会导致第二次触发更改事件。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-12 06:27:04

手动触发变更事件:

t.model.trigger('change', t.model);

t.model.trigger('change:fieldErrors', t.model, newFieldErrorsValue);
票数 26
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15959737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档