【发布时间】:2020-12-08 21:04:55
【问题描述】:
js 中有没有办法检查表单的reset() 功能是否真的改变了某些东西。
重置将表单输入重置为默认值。但是如果当前值已经是默认值,我想注意reset() 没有效果。如果reset() 改变了我想调用foo() 的东西,如果重置没有效果我想调用bar()。
如果不比较之前和之后的每个输入字段,这是否可以优雅地实现?
【问题讨论】:
-
调用
form.reset()之前和之后的快照? -
但我必须逐个比较快照输入字段,这是我的第一个想法,但感觉并不优雅
-
不是很优雅,但你可以在调用 reset 时检查每个字段是否原始/脏
-
我认为你问这个问题是一个不好的症状。您的客户应该将表单的状态保存在某个地方,并且您还应该与该状态一起保持初始状态。两者兼得后,您可以轻松检查重置是否更改了某些内容(实际上您根本无法使用重置!)
标签: javascript html typescript