javascript - 判断一个(dojo)dijit.Editor中的内容是否与初始值不同

标签 javascript dojo

我有一个包含许多 dijit.form 元素和一个 dijit.Editor 的表单。该表单最初填充了我从服务器获得的数据。用户可以更改内容,然后将其提交回服务器。经典用例。

当用户提交表单时,我只需要发送更改后的数据。 dijit.Editor 的问题在于它有时会更改初始内容,即使用户没有进行任何更改也是如此。例如:

dijit.editor中输入的初始内容是这样的:

"Gesegmenteerde rand, 115 mm~Max 13280 U/min, 80 m/sec</br>~Drooggebruik"

当像这样检索内容时 editorObj.get('value');它返回这个:

"Gesegmenteerde rand, 115 mm~Max 13280 U/min, 80 m/sec<br />~Drooggebruik"

如您所见,
已更改为
。我知道原始值是错误的,但那是因为来源很烂而且我无法控制。

所以我的问题是:是否有一种简单的方法来检查内容是否确实已被用户更改,而不仅仅是 dijit.Editor 本身。

最佳答案

像这样的东西(在编辑器标记上)有效:

onkeypress="MyObject.setDirty(true);"

只需在 MyObject.isDirty 上跟踪它。

这确实有一个缺点,如果用户在编辑器中键入内容,然后将所有内容修改为与原来完全相同,则值将是错误的(即,true,而内容又恢复为原始状态),但这已经足够了对于大多数目的。

关于javascript - 判断一个(dojo)dijit.Editor中的内容是否与初始值不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9826935/

相关文章:

javascript - 警告 : The page index. html 运行了不安全的内容

javascript - 按钮显示在本地文件上,但在 heroku 中部署在网络上时不显示

Javascript继承和方法覆盖

Dojo:如何从值中删除逗号

javascript - dojo中源和目标之间的区别

javascript - 从用户区域设置中选择日期格式字符串

javascript - 使用 Javascript 选择 Dojo ComboBox 项目

javascript - 在其他脚本中访问对象属性

javascript - 使用PHP的计数器系统

javascript - 为什么 ng-change 在 angularjs 中给出 "undefined"?