internet-explorer - IE9 : Form values revert back to old value after AJAX form submit

标签 internet-explorer jquery internet-explorer-9

我有一个非常奇怪的问题。我使用 jquery 提交提交表单。 everythign 在我的电脑上的 FF 和 IE9 中运行良好。 IE9是企业标准,所有用户都安装相同的版本。

现在有一个用户在每次提交后都会遇到问题

  • 表单字段(文本区域、选择、输入)恢复为之前的值
  • 重新加载数据(AJAX)时,它会显示旧值(即使之前的提交实际上正确地将更新保存到数据库)

要显示新值的唯一方法是重新启动 IE9。我清除了历史记录(临时文件),但这没有效果。

由于这在我的 IE9 电脑上运行得非常好,什么设置会影响这个?还有其他想法吗?有点迷失在这里。

编辑:

其他用户也有同样的问题,但它也适用于某些用户,就像在我的电脑上一样

编辑2:

仅供澄清:我希望提交的值保留在输入字段中。提交是一种保存,用户应该能够继续输入数据并稍后再次保存。

编辑3:

尝试了我电脑上的重置...按钮(重置 Internet Explorer 设置)。没有改变。仍然按预期工作。问题是我无法在用户电脑上轻松执行此操作,因为他会丢失整个配置。

最佳答案

问题是,表单提交后,数据会重新加载,以使用 AJAX 来显示更改的元数据(上次更新用户和时间)。由于某种原因,GET AJAX 调用被缓存,因此返回了旧值。由于某种原因,我不知道我的电脑从未缓存过 GET 调用,因此它始终正常工作。

解决方案是禁用缓存:

$.ajax({
    "url": url,
    "type": "GET",        
    "cache": false,
    "dataType": 'json',
    //...
});

关于internet-explorer - IE9 : Form values revert back to old value after AJAX form submit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16080187/

相关文章:

javascript - Internet Explorer 7/8 和窗口函数是空对象

JqueryUI Draggable 无法在 IE 中工作?

javascript - 在当前鼠标位置的 Canvas 内添加一个 Textarea

javascript - 在当前返回 Uncaught TypeError : Cannot read property 'weight' of undefined 的节点 d3.js 之间创建链接

compatibility - 带有 ul 的 IE9 兼容模式针对 float :left

css - IE9 Hover 的问题

vba - 单击 vba 上没有 id 的按钮以在 IE 上使用

internet-explorer - 关于 $ie.Document.getElementById

jquery - 如何使用 vue.js 2 更改跨度上的文本?

css - 输入按钮上的 IE9 CSS 不起作用