javascript - 我正在寻找在浏览器中自动保存直到提交的功能

标签 javascript jquery html

JS:

(function(window, document, undefined) {
    function changeSelect(event) {
        if(event.target.type=='checkbox' || event.target.type=='radio') {
            window.localStorage.setItem(event.target.id, event.target.checked?'checked':'unchecked');
        } else {
            window.localStorage.setItem(event.target.id, event.target.value);
        }
    }
    function load(event) {
        var i = 0, k, e;
        while(i < window.localStorage.length) {
            k = window.localStorage.key(i++);
            e = document.getElementById(k);
            if(e) {
                if(e.type=='checkbox' || e.type=='radio') {
                    e.checked = window.localStorage.getItem(k)=='checked';
                } else {
                    e.value = window.localStorage.getItem(k);
                }
            }
        }        
    }
    function clearData(event) {
        window.localStorage.clear();
    }
    window.addEventListener('load', load, true);
    window.addEventListener('change', changeSelect, true);
    window.addEventListener('select', changeSelect, true);
    window.addEventListener('submit', clearData, true);
})(window, document)

我从互联网上获得了这段代码,它运行良好。

我有一个要求,如果员工进行长报价时浏览器突然关闭,发生任何问题,它应该检索我们输入的全部数据。 上面代码的问题是两个输入字段数据它没有占用剩余的所有数据:

两个输入字段始终为空:

  1. 下拉字段数据,
  2. 我使用用户输入从服务器获取一些输入字段的

这两个字段始终为空。如果我重新加载。

如果您有一些更好(或)可能的编码,可以在重新加载页面时返回所有详细信息(对于发生某些互联网问题)。

提前致谢。

最佳答案

也添加其他事件:

window.addEventListener('keyup', changeSelect, true);
window.addEventListener('click', changeSelect, true);

关于javascript - 我正在寻找在浏览器中自动保存直到提交的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32093848/

相关文章:

css - 流宽 HTML5 视频不能在 iPad 或 iPhone 上运行?

html - 为什么这个 flexbox 页脚不能在移动设备上工作?

javascript - 如何调用 chrome.storage.sync.get 并在页面加载时分配变量?

javascript - 如何更改嵌套对象数组中的键值javascript

javascript - jQuery:选择 LI 的父文本

javascript - 应该是未定义的 jQuery 对象

jQuery val() 没有得到实时结果

html - 子菜单在 Mac OS 10.6 上的 Chrome、Safari 和 Firefox 中消失

javascript - 将 HTML 表导出到 Excel - 无法在 Office 2010 中打开

javascript - 在渲染链接到 Navlink 的组件之前隐藏当前组件 - React Router