知识大全 ajax+jsp草稿自动保存的实现代码

Posted

篇首语:读书志在圣贤,为官心存君国。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ajax+jsp草稿自动保存的实现代码相关的知识,希望对你有一定的参考价值。

一 表单部分 (l)     首先是表单填写页面 用一个ID为AutoSaveMsg的DIV来显示返回信息 并且用一个ID为Draft_AutoSave的CheckBox来确定是否进行自动保存 然后将Textarea的ID命名为message 同时为了应对多用户同时使用的需要 加上用户名 每个用户的草稿分开保存 为了说明方便 这里把一些修饰性的东西去掉 这样看起来比较明了 <h >AJAX应用之草稿自动保存</h ><br /> <!  用户名默认为NONAME  > 用户名 <input type= text  name= memName  id= memName       size=  value= NONAME  disabled= true  />      <!  在自动保存选项的onclick事件中调用自动保存状态设置函数  > <input onclick= SetAutoSave();  type= checkbox  id= Draft_AutoSave  value=  checked= true  />自动保存? <br /><br /> 内容 <textarea cols=  rows=  id= message >你编辑的内容将被自动保存 以便恢复</textarea><br /><br /> <!  AutoSaveMsg显示返回信息  > <div id= AutoSaveMsg ></div><br /> <input type= submit  onclick= Save();  value= Save  />   <!  调用函数恢复最后保存的草稿  > <input type= button  onclick= AutoSaveRestore();  value= Restore  /> </div> </div> <!  将JS代码放在所有对象之后 以免在页面未加载完成时出现对象不存在的错误  > |<!  AJAX类  > <script type= text/javascript  src= ajaxrequest js ></script> <!  自动保存代码  > <script type= text/javascript  src= autosave js ></script> 二 自动保存代码(autosave jsp)   // 首先设置全局变量 // 要保存的内容对象FormContent var FormContent; // 显示返回信息的对象 var AutoSaveMsg=document getElementById( AutoSaveMsg ); // 用户名 var memName=document getElementById( memName ) value; // 自动保存时间间隔 var AutoSaveTime= ; // 计时器对象 var AutoSaveTimer; // 首先设置一次自动保存状态 SetAutoSave(); // 自动保存函数 function AutoSave()       FormContent=document getElementById( message );     // 如果内容或用户名为空 则不进行处理 直接返回     if(!FormContent value||!memName) return;     // 创建AJAXRequest对象     var ajaxobj=new AJAXRequest;     ajaxobj url= autosave jsp ;     ntent= action=AutoSave&memname= +memName+ &postcontent= +FormContent value;     ajaxobj callback=function(xmlObj)          // 显示反馈信息         AutoSaveMsg innerHTML=xmlObj responseText;          ajaxobj send(); // 设置自动保存状态函数 function SetAutoSave()      // 是否自动保存?     if(document getElementById( Draft_AutoSave ) checked==true)         // 是 设置计时器         AutoSaveTimer=setInterval( AutoSave() AutoSaveTime);     else         // 否 清除计时器         clearInterval(AutoSaveTimer); function AutoSaveRestore() // 恢复最后保存的草稿      AutoSaveMsg innerHTML= 正在恢复 请稍候……      FormContent=document getElementById( message );     // 如果用户名为空 则不进行处理 直接返回     if(!memName) return;     // 创建AJAXRequest对象     var ajaxobj=new AJAXRequest;     ajaxobj url= autosave jsp ;     ntent= action=Restore&memname= +memName;     ajaxobj callback=function(xmlObj)           // 显示反馈信息       if(xmlObj responseText!= )           // 恢复草稿          var s=xmlObj responseText replace(/^[\\n|\\r\\n]*|[\\n|\\r\\n]*$/g );//去掉首尾空行          FormContent innerText=s;           // 提示用户恢复成功         AutoSaveMsg innerHTML= 恢复成功 ;                   ajaxobj send(); function Save() //将内容保存至数据库 没有完成  FormContent=document getElementById( message );     // 如果内容或用户名为空 则不进行处理 直接返回     if(!FormContent value||!memName) return;     // 创建AJAXRequest对象     var ajaxobj=new AJAXRequest;     ajaxobj url= autosave jsp ;     ntent= action=Save&memname= +memName+ &postcontent= +FormContent value;     ajaxobj callback=function(xmlObj)          // 显示反馈信息         AutoSaveMsg innerHTML=xmlObj responseText;          ajaxobj send();   三   最后是autosave jsp 用于在后台保存草稿   程序代码 <%@ page contentType= text/; charset=gb  %> <%@ page import= java util *  %> <%@ page import= java io *  %> <%   String PostContent memName action;   String filename;   File f;    FileWriter fw;    action=request getParameter( action );//获取操作 是保存草稿还是恢复草稿   //获取用户名    memName=request getParameter( memname );   //获取草稿内容    PostContent=request getParameter( postcontent );   filename=memName+ txt ;//保存草稿的文件   filename= request getRealPath( /temp/ +filename);   if(action equals( Save )||action equals( AutoSave )) //这里两个动作合并了 保存到数据库的代码没有写     f = new File(filename);     if(!f exists())//如果文件不存 则建立            f createNewFile();         fw = new FileWriter(filename); //建立FileWrite对象 并设定由fw对象变量引用    PostContent=new String(PostContent getBytes( ISO _ ) UTF );    fw write(PostContent);    fw close(); //关闭文件     out println( 最后于 +new Date() toString()+ 自动保存成功!! );    else if(action equals( Restore ))//恢复操作      FileReader fr = new FileReader(filename); //建立FileReader对象 并设定由fr对象变量引用      BufferedReader br = new BufferedReader(fr); //建立BufferedReader对象 并设定由br对象变量引      StringBuffer bf=new StringBuffer();      String Line;      while((Line = br readLine())!=null) //读取一行数据       bf append(Line+ \\n );          out print(bf toString() trim());   else     out println(  发生错误 );    %> 四 AJAX类(ajaxrequest js)请下载   cha138/Article/program/Java/JSP/201405/30749

相关参考

知识大全 Jsp环境下的AJAX乱码问题

Jsp环境下的AJAX乱码问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!cha138

知识大全 JSP在Struts 2中使用JSON Ajax支持

JSP在Struts2中使用JSONAjax支持  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 在写邮件正文时不小心删了正文,但草稿箱里又没有保存,请问能有办法找到被删了的未发送的邮件正文?

在写邮件正文时不小心删了正文,但草稿箱里又没有保存,请问能有办法找到被删了的未发送的邮件正文?按CTRL+Z撤销键试试,如果不行的话那就只有重新写了,记得及时的保存哦QQ邮箱草稿箱里面删了的邮件怎么恢

知识大全 jquery图片不完全按比例自动缩小的简单代码

开发前期用自动生产固定大小的图片进行显示发现不能满足在前期的时候把保存了原图现在只能显示原图原图由于上传时候没有做任何限制所有要使用图片不完全按比例缩小下面是代码 复制代码代码如下:lish

知识大全 php ajax用户注册检测代码

  实只要简单的实现ajax的检测用户名正规点要分三个文件我这里简单点:  第一个indexphp<!DOCTYPEPUBLIC"//WC//DTDXHTMLTransitional//EN""

知识大全 ajax验证用户名是否可用

  Ajax很简单(jsp例子)  首先是jsp页面和脚本为了方便写在一个里面  这是一个很常见的检测用户名是否存在的功能  这里用的是struts可以在路径path中加加上要传的值name在acti

知识大全 php+ajax实现页面自动刷新时间

  indexphp  viewplaincopytoclipboardprint?<mce:scripttype=text/javascript><!  var

知识大全 javascript自动改变文字大小和颜色的效果的小例子

这篇文章介绍了javascript自动改变文字大小和颜色的效果的小例子有需要的朋友可以参考一下 复制代码代码如下:cha138/Article/program/Java/JSP/2

知识大全 使用jquery实现简单的ajax

本篇文章是对用jquery实现简单的ajax的实现方法进行了详细的分析介绍需要的朋友参考下   >页复制代码代码如下:<!DOCTYPEPUBLIC"//WC//DTDXHTML

知识大全 一个AJAX自动完成功能的js封装源码[支持中文]第1/2页

一个AJAX自动完成功能的js封装源码[支持中文]第1/2页  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看