javascript定时保存表单数据的代码

 更新时间:2011年03月17日 00:18:22   作者:  
我相信有不少TX用过QQ或163的邮箱吧?他们中有一个比较有用且有趣的功能,如果您在编写邮件,那在固定一个时间频率内,它会自动将您的邮件内容保存起来,以免丢失。
(忘记是不是两家邮箱都有这个功能)。
那这个功能是怎么做的呢?

定时,我们知道怎么弄,但保存呢?也许我们会通过隐藏域等手段来存放数据。但是,这个却有个缺点:那就是刷新页面后,数据将会丢失。
而此时,就该轮到我们很少关注,而且估计有不少人不知道的UserData 行为(userData Behavior)登场了:
而这个UserData是什么?怎么用?,我将在文章最后转载一篇介绍它的文章。
现在,我直接上例子,所谓无代码,无真相嘛:
复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<meta name="generator" content="editplus" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<script type="text/javascript">

window.onload=function(){

var txtObj = document.getElementById('txt1');
var spanObj = document.getElementById('s1');

//自动保存
txtObj.addBehavior("#default#userData");

var saveTimer= setInterval(function(){
txtObj.setAttribute('OValue',txtObj.value);
txtObj.save('SavedData');

spanObj.innerText='数据保存于:'+(new Date());
setTimeout(function(){
spanObj.innerText='';
},1000);

},10000); //每分钟保存一次

document.getElementById('btn1').attachEvent('onclick',function(){
clearInterval(saveTimer); //取消保存
txtObj.removeAttribute('OValue');
});

document.getElementById('btn2').attachEvent('onclick',function(){
txtObj.load('SavedData');
alert(txtObj.getAttribute('OValue'));
//txtObj.value = txtObj.getAttribute('OValue');
});
};

</script>
</head>

<body>
<span id="s1" style="color:red;"></span>
<p />
<textarea height="500" style="height:500px;width:500px;" id="txt1">
</textarea>
<p />
<input type="button" id="btn1" value="停止保存" />
<input type="button" id="btn2" value="获取保存的值" />
</body>
</html>

将这段html复制下来运行一下,你就会发现,其实这跟邮箱中的定时保存基本一致了,在润色一下就OK了。
大家看下利用userData实现客户端保存表单数据 这篇文章。

相关文章

  • 技术男用来对妹子表白的百度首页

    技术男用来对妹子表白的百度首页

    这篇文章主要介绍了技术男用来对妹子表白的百度首页,非常有创意、有意思,需要的朋友可以参考下
    2014-07-07
  • JavaScript组合模式Composite Pattern

    JavaScript组合模式Composite Pattern

    这篇文章主要介绍了学习理解JavaScript组合模式,组合模式及Composite Pattern又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象
    2022-04-04
  • JavaScript实现级联菜单的方法

    JavaScript实现级联菜单的方法

    这篇文章主要介绍了JavaScript实现级联菜单的方法,涉及javascript页面元素操作的相关技巧,需要的朋友可以参考下
    2015-06-06
  • 微信小程序实现手势滑动效果

    微信小程序实现手势滑动效果

    这篇文章主要为大家详细介绍了微信小程序实现手势滑动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • 使用Bootstrap Tabs选项卡Ajax加载数据实现

    使用Bootstrap Tabs选项卡Ajax加载数据实现

    这篇文章主要介绍了使用Bootstrap Tabs选项卡Ajax加载数据实现,以及遇到的问题,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • javascript模仿msgbox提示效果代码

    javascript模仿msgbox提示效果代码

    js对话框的模拟演示代码
    2008-06-06
  • Bootstrap基本组件学习笔记之按钮组(8)

    Bootstrap基本组件学习笔记之按钮组(8)

    这篇文章主要为大家详细介绍了Bootstrap基本组件学习笔记之按钮组,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • 使用webpack和rollup打包组件库的方法

    使用webpack和rollup打包组件库的方法

    这篇文章主要介绍了使用webpack和rollup打包组件库的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • javascript实现画板功能

    javascript实现画板功能

    这篇文章主要为大家详细介绍了javascript实现画板功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • Rxjs 中处理错误和抓取错误的代码案例

    Rxjs 中处理错误和抓取错误的代码案例

    这篇文章主要介绍了Rxjs 中怎么处理和抓取错误,本文,我们学习了如何使用 catchError 在数据流中抓取错误,怎么去修改和返回 observable,或者使用 EMPTY 不去触发组件中的错误,需要的朋友可以参考下
    2022-08-08

最新评论