AutoSave/自动存储功能实现

2016-02-19 10:23 41 1 收藏

今天图老师小编给大家介绍下AutoSave/自动存储功能实现,平时喜欢AutoSave/自动存储功能实现的朋友赶紧收藏起来吧!记得点赞哦~

【 tulaoshi.com - Web开发 】

转自: http://www.fayland.org/journal/AutoSave.html

这个功能很常见。是为了防止浏览器崩溃或提交不成功而导致自己辛辛苦苦写就的东西消失掉。Gmail 里也这个东西。
它的原理是将该文本框的东西存储进一个 Cookie. 如果没提交成功(原因可能是浏览器崩溃),下次访问该页面时询问是否导入上次存储的东西。
function AutoSave(it) { // it 指调用的文本框
    var _value = it.value;    // 获得文本框的值
   if (!_value) {
       var _LastContent = GetCookie('AutoSaveContent'); // 获得 cookie 的值,这里的 GetCookie 是个自定义函数,参见源代码

       if (!_LastContent) return; // 如果该 cookie 没有值,说明是新的开始

       if (confirm("Load Last AutoSave Content?")) { // 否则询问是否导入
           it.value = _LastContent;
           return true;
       }            
   } else {

       var expDays = 30;
       var exp = new Date();
       exp.setTime( exp.getTime() + (expDays * 86400000) ); // 24*60*60*1000 = 86400000
       var expires='; expires=' + exp.toGMTString();

       // SetCookie 这里就是设置该 cookie
       document.cookie = "AutoSaveContent=" + escape (_value) + expires;
   }
}

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)
而这 HTML 中应当如此:

script language=JavaScript src='/javascript/AutoSave.js'/script
form action="submit" method="POST" onSubmit="DeleteCookie('AutoSaveContent')"
textarea rows="5" cols="70" wrap="virtual" onkeyup="AutoSave(this);" onselect="AutoSave(this);" onclick="AutoSave(this);"/textarea
input type="submit"/form
第一句导入 js, 第二句的 onSubmit 指如果提交了就删除该 cookie, 而 DeleteCookie 也是自定义的一个函数。参见源代码。
textarea 里的 onkeyup 是指当按键时访问 AutoSave, 用以存储新写入的文字。
而 onselect 和 onclick 用以新访问时确定导入自动保存的文字。

大致就是如此。 Enjoy!

源代码:http://www.fayland.org/javascript/AutoSave.js

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

来源:https://www.tulaoshi.com/n/20160219/1594476.html

延伸阅读
标签: ASP
  在  网上 讨论 如何 实现 分页  有很多程序,我在这里向大家  介绍一种实现分页的新的方法,使用 存储过程 来实现分页    由于 这段程序写的 比较早,那个时候 还没有 SQL 7,每一个 Varchar 只能 支持 255 个字符,所以 采取了一种比较笨的办法,如果大家有兴趣,请去  http:/...
标签: Web开发
     我不是一个很有经验的程序员,在做项目的过程中会遇到很多的问题,在数据库中使用分页就是我做项目中遇到的一个问题.我从网上查了很多资料,有很多种方法.但我觉的创建临时数据表是最简单的方法,在我做Membership扩展时发现原来微软也是这样用的,你可一随便打开一个Membership的存储过程看看.    &nbs...
标签: ASP
一、创建表 tiku_koushi if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tiku_koushi]') and OBJECTPROPERTY (id, N'IsUserTable') = 1) drop table [dbo].[tiku_koushi] GO CREATE TABLE [dbo].[tiku_koushi] ( [id] [int] IDENTITY (1, 1) NOT NULL , [title] [varchar] (250) COLLATE Chinese_PRC_CI_AS N...
实现文件加密功能 作者:林静 下载本文示例源代码 我前几天在VC知识库(VCKBASE.COM)下载了一个 "徐景周" 做的一个叫<加密之星的小工具的源代码,我把它编译后拿文件来实验一下发现它对大多数文件都不管用.比如,加密文本文件只有文件的前一部分被加密而大部分还完整的存在, 如果用...
标签: 电脑入门
有些用户虽然喜欢iCloud方便的数据共享,但是却很讨厌文档默认保存在iCloud 上,所以想将iCloud 文件存储功能关闭,怎样才能做到呢?现在就让图老师小编来教你一个方法吧。 关闭 iCloud 文件存储: 1、首先打开系统偏好设置(在应用程序中) 2、点击iCloud图标。 3、去掉文稿与数据前面的勾。 现在你再也看不见iCloud的文件存...

经验教程

808

收藏

6
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部