静态页面无刷新添加回复,实时更新静态网页

 

静态页面无刷新添加回复,实时更新静态网页 ,不用xml,我用另一种办法实现

适用:带回复/评论的文章页面(.html,.htm格式).

演示页面:  http://www.uptoday.cn/shtml/article1537.htm

所用技术:AJAX   fso文件操作

原理:在静态页内发表回复,由ajax后台处理回复内容,并回调给前台显示(无刷新)。同时在后台用fso重写此静态页面(服务器上),将回复内容写入。因为前台浏览器上的静态页已下载到客户端,不会受到影响,但一刷新,就是更新后的页面了.

关键代码:

*********前台 article23.htm***********

<HTML>
<SCRIPT LANGUAGE="JavaScript">
function ajax_reply(name,comment,id){

      var xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");     
      xmlhttp.open("POST","reply_submit.asp",true);
      xmlhttp.setRequestHeader('Content-type','application/x-www-form-urlencoded');
   xmlhttp.onreadystatechange=function(){
   if (xmlhttp.readystate==1)
        {}
         else if(xmlhttp.readystate==4)
   {
   window.alert("感谢您的回复!/n若发现楼数不对,请刷新!");
   document.getElementById("reply").innerHTML+=xmlhttp.responseText; //前台显示新回复
   }
}
   xmlhttp.send("name="+escape(name)+"&comment="+escape(comment)+"&id="+escape(id));
}

}

</SCRIPT>
<BODY>
   <div id="title">文章标题</div>
   <div id="content">文章内容</div>

<div id="reply">回复内容
    <span>用户名1</span><BR><div>回复1</div>
    <reply/>   <!-- 标记,新回复将出现的位置 -->
</div>

<div id="reply_form" >添加回复的表单
     <FORM METHOD=POST ACTION="">
   <INPUT TYPE="text" NAME="name"><TEXTAREA NAME="comment" ROWS="" COLS=""></TEXTAREA>
   <INPUT TYPE="bottom" value="提交" οnclick="ajax_reply(name.value,comment.value,23)">
     </FORM>
</div>


</BODY>
</HTML>

********后台处理 reply_submit.asp*****

<%
reply="<span>"&Request.Form("name")&"</span><BR><div>"&Request.Form("comment")&"</div>"

b=server.mappath("/")
id=Request.Form("id")

'此处也可向数据库中添加记录
Set fso=Server.CreateObject("Scripting.FileSystemObject")

Set type1=fso.openTextFile(b&"/article"&id&".htm")
   all=type1.readall
   all=replace(all,"<reply/>",reply&"<reply/>")   '处理原页面,加入新回复

Set type2=fso.createTextFile(b&"/article"&id&".htm")
type2.WriteLine all   '重写页面
type2.close
Set fso=Nothing

response.write reply   '回调给前台
%>
***********************************
演示页面:  http://www.uptoday.cn/shtml/article1537.htm
在此页底部回复,暂不支持firefox

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值