jQuery:在输入字段上使用Web存储/本地存储
jQuery: Using web storage/local storage on input fields
我正在尝试保存/检索表单中所有输入字段的值。不幸的是,这是行不通的。
令人沮丧的是,我不知道出了什么问题。我已经测试了类型:键和值都是字符串。事件已正确附加,将触发console.log
。
你在这段代码中看到任何让你印象深刻的东西吗?为什么没有保存或检索任何值?
(function ($) {
if (typeof (window.localStorage) != "undefined") {
$.each($("#myform input[type=text]"), function () {
localStorage.getItem($(this).attr("id"));
});
$("#myform input[type=text]").live("change", function () {
localStorage.setItem($(this).attr("id"), $(this).val());
});
}
})(jQuery);
当然,我正在支持网络存储的浏览器中进行测试,每个输入都有一个 id。
从jQuery 1.7开始,.live()方法已被弃用。使用 .on() 附加事件处理程序。使用旧版本的 jQuery 的用户应优先使用 .delegate() 而不是 .live()。
(来自 JQuery 文档)
所以我的猜测是你有两个选择:
$("#myform input[type=text]").on("change", function () {
localStorage.setItem($(this).attr("id"), $(this).val());
});
或
$("#myform input[type=text]").delegate("change", function () {
localStorage.setItem($(this).attr("id"), $(this).val());
});
-
.live()
在 1.9 中删除,并从 1.7 中弃用 - 我在第一个
each
循环中没有看到任何值设置器$(this).val(localStorage.getItem($(this).attr("id")))
来填充值。
相关文章:
- web浏览器中的离线应用程序存储数据并在之后上传
- 在firebase(web)上存储数据时出现问题
- (临时)在Web应用程序中存储JSON搜索结果
- Html5 Web 存储未在第二页中显示数据
- 无法使用HTML5 Web存储保存布尔值的解决方法
- 本地存储web数据的最佳实践
- 在web应用程序中存储数据
- 围绕web存储的Javascript API包装器
- 具有Web SQL数据库的客户端存储
- 在Polymer中使用会话存储web中的数据
- 将图像从 Web 应用程序上传到 S3,而无需将其存储在服务器中
- 如何在 Symbian 存储中发布 Web 应用程序
- jQuery:在输入字段上使用Web存储/本地存储
- 如何设计 Web 应用以允许多个存储提供程序
- 在客户端JavaScript中存储Web应用程序的用户密码 - 这是安全的吗?
- $_POST 不在提交 Web 应用程序上存储数据
- Web应用程序在客户端存储大量数据
- HTML5离线存储/Web SQL
- getDownloadURL无法正常工作-Firebase存储(Web)
- 检测和存储 Web 应用客户端所在的时区的最佳方法是什么