Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在jQuery中更改选项卡时恢复值_Jquery_Jquery Ui - Fatal编程技术网

在jQuery中更改选项卡时恢复值

在jQuery中更改选项卡时恢复值,jquery,jquery-ui,Jquery,Jquery Ui,我使用jQueryUI的选项卡,当用户更改选项卡中的表单时,它会提示用户已经进行了更改 我的问题是,当用户在我的confirm()提示符上按“OK”时,如何在更改值之前还原这些值?您必须在更改值之前跟踪这些值的内容。。。所以,类似这样的东西应该适合你: var oldValues = {}; $(function() { $(":input").each(function() { oldValues[$(this).attr("id")] = $(this).val();

我使用jQueryUI的选项卡,当用户更改选项卡中的表单时,它会提示用户已经进行了更改


我的问题是,当用户在我的confirm()提示符上按“OK”时,如何在更改值之前还原这些值?

您必须在更改值之前跟踪这些值的内容。。。所以,类似这样的东西应该适合你:

var oldValues = {};
$(function() {
    $(":input").each(function() {
        oldValues[$(this).attr("id")] = $(this).val();
    });
});
function revertValues() {
    for (var oldVal in oldValues) {
        $("#" + oldVal).val(oldValues[oldVal]);
    }
}
然后,当您在确认对话框中点击OK时,只需调用
revertValues

请注意:

  • 我只是把这段代码直接写进了浏览器,所以它完全没有经过测试
  • 假设在其他选项卡上有其他输入,则需要更改
    :input
    选择器,并为每个选项卡保留不同的
    旧值集(&然后显然只还原当前选项卡的值)

您需要更加具体,发布一些代码可能会有所帮助。您是否只想在单击某个按钮时重置表单?