0

假设我有一个对话框,其中包含一些复选框、单选按钮、文本输入等,它们代表一些选项。我通过单击页面上的某个链接打开此对话框。我希望能够通过单击对话框内的保存和取消按钮来保存和取消选项。

处理保存按钮看起来很简单 - 我只是通过控件并获取当前值。我想知道的是我应该如何更好地控制取消按钮。因此,我更改了对话框中的一些选项,然后改变主意并单击“取消”按钮。显然,我需要在更改之前将所有控件返回到它们的状态。

我该如何更好地做到这一点?我应该将对话框加载的当前状态保存到某些隐藏字段或属性吗?请分享你的想法。

4

3 回答 3

0

我会在打开对话框时复制当前状态,在对话框中修改副本,当用户按下按钮时,用新状态替换当前状态或简单地删除相应的副本。

于 2012-04-18T21:38:34.880 回答
0

您可以只使用内置的重置将表单值恢复为默认值,然后处理保存,这实际上会将状态返回到进行更改之前的原始值。

于 2012-04-18T21:40:54.413 回答
0

data您可以在属性中保存当前保存的状态。在 HTML 中,此类属性看起来像data-something="some value",但您可以简单地从 JavaScript 访问它。例如。jQuery 有它的快捷方式,看起来像jQuery(element_selector).data('something'). 您也可以从 JavaScript 中设置它,例如jQuery(element_selector).data('something', 'some other value').

使用该机制,您可以最初设置这些值并在每次保存时覆盖它们。如果有人单击“取消”,您只需将控件/表单元素恢复到与您存储为与该元素关联的数据的值相匹配的状态。

请记住,此类数据与 DOM 元素相关联,因此删除它们会删除数据,但在这种情况下,这是一种非常干净和灵活的方法。

更多的:

于 2012-04-18T21:44:28.120 回答