通过ajax刷新数据时覆盖表单“重置”行为

时间:2010-10-31 23:58:54

标签: javascript jquery xhtml

我依靠表单的“重置”行为取消编辑,我面临的问题是,一旦发布数据通过ajax更新,重置仍然会恢复为页面加载的数据origionally。

所以基本上我需要做的是“重置”“重置”功能。有意义吗?

3 个答案:

答案 0 :(得分:4)

试试这个:

$("#yourForm").bind("reset", function() {

    // reset the form manually with the "newest" data

    return false;
});

在这种情况下,您必须存储新数据(您从Ajax回调中获得的数据)。然后,当用户重置表单时,您手动使用该数据填充表单元素。

答案 1 :(得分:3)

还有一种本土方式。

form-elements具有存储初始值的属性。

要做到这一点,以下将是有趣的:

<强>默认值(文本输入,文本区域)
defaultChecked (收音机,复选框)
defaultSelected (选项)

那么如何为reset()设置一个新的初始点呢: 遍历元素并将当前属性(值,已选中,已选中)分配给这些默认属性。

答案 2 :(得分:0)

我认为不可能 - 重置始终会恢复为HTML代码中提供的值。我想最简单的方法是将AJAX的数据放在某处(即隐藏字段)并提供自定义重置按钮,将按钮(从隐藏输入或存储它们的任何位置)加载到表单中。