精彩专题推荐:建站之入门课 建站之必修课 建站之关键课 网站价值所在 流量提高专题 css+div 标准 个人网站打造全过程
返回建站学首页
导航:
建站首页 | 网站设计 | 网站开发 | 网站运营 | 网页软件 | 建站指南 | 搜索优化 | 图像处理 | 视频教程 | 书籍教程 | 建站专题
当前位置:首页>网站开发>ajax教程>正文

ASP+AJAX打造无刷新新闻评论系统


来源:不详 时间:07-06-12 点击: 点击这里收藏本文

  2.获得评论列表

  此段代码的主要功能是根据服务器处理返回的信息更新前台页面的内容,主要包括显示评论列表、评论列表分页、跳转页数三个功能。

  显示评论列表:getList函数

  function getList(xmlDom)
  {
  var pllist=document.getElementById("pllist"); //获得页面pllist对象,此对象用来显示评论内容
  var node=xmlDom.responseXML.getElementsByTagName("pllist");//获得pllist节点集合
  var tot=xmlDom.responseXML.getElementsByTagName("pl")[0].getAttribute("tot");//获得pl节点tot属性值,这里指评论的总数量
  var curpage=xmlDom.responseXML.getElementsByTagName("pl")[0].getAttribute("curpage");//获得pl节点curpage属性,这里指评论列表当前所在的页数,应用于翻页
  if (tot!=0) //判断当前评论数是否为空
  {
  var cont="";
  var len=node.length;//获得pllist节点集合中节点的总数量
  for(var i=0;i〈len;i++)
  {
  var u=node[i].childNodes(0).text;//获得节点第一个子节点的值,这里指呢称
  var d=node[i].childNodes(1).text; //获得节点第二个子节点的值,这里指时间
  var co=node[i].childNodes(2).text; //获得节点第三个子节点的值,这里指内容
  var idnub=node[i].childNodes(3).text; //获得节点第四个子节点的值,这里指新闻ID
  cont+='〈div class="u"〉呢称:'+u+'〈/div〉〈div class="d"〉时间:'+d+'〈/div〉〈div class="idnub" onclick="del('+idnub+')" style="cursor:hand" onmouseout="this.style.background=\'\'" onmousemove="this.style.background=\'#99cc66\'"〉删除〈/div〉〈div class="co"〉内容:'+co+'〈/div〉'; //将所获得的评论内容生成一个字符串
  }
  var cont1=pagecount(tot,curpage);//调用分页函数
  cont+=cont1;
  pllist.innerHTML=cont;//将内容呈现
  }
  else
  {
  pllist.innerHTML="暂无评论!";
  }
  }

  评论列表分页:pagecount函数

  function pagecount(tot,cur)
  {
  var cont1="";
  if (tot%5==0) //默认每页五条,这个要求与服务器端保持一致
  {
  pages=parseInt(tot/5);
  }
  else
  {
  pages=parseInt(tot/5)+1;
  }
  for(var j=1;j〈=pages;j++)
  {
  if (j==cur)
  { cont1+="〈span〉"+j+"〈/span〉 "}
  else
  { cont1+="〈span style='cursor:hand;color:#0000ff' onmouseout='this.style.background=\"\"' onmousemove='this.style.background=\"#99cc66\"' onclick='gotopage("+j+")'〉"+j+"〈/span〉 "}
  }
  return cont1;
  }

  跳转页数:gotopage函数

  function gotopage(page)
  {
  loadXML("get","pl_list.asp?page="+page,getList);
  }
  function loadDom() //定时更新评论列表,初始化10秒钟
  {
  loadXML("get","pl_list.asp",getList);
  setTimeout("loadDom()",10000)
  }

  3.删除评论

  function del(idnub)
  {
  var msg=document.getElementById("msg");
  msg.innerText="正在删除……";
  loadXML("get","pl_del.asp?id="+idnub,getdel);
  }
  function getdel(xmlDom) //删除后所触发的事件,更新页面
  {
  var msg=document.getElementById("msg");
  msg.innerText="删除成功!";
  loadXML("get","pl_list.asp",getList);
  }

  4.提交评论

  function fb() //处理提交
  {
  var msg=document.getElementById("msg");
  var user=document.getElementById("user");
  var content=document.getElementById("content")
  var newsid=document.getElementById("newsid")
  if (user.value=="")
  {
  alert("呢称不可为空!");
  return false;
  }
  if (content.value=="")
  {
  alert("内容不可为空!");
  return false;
  }
  msg.innerText="正在发表评论";
  loadXML("get","pl_fb.asp?user="+user.value+"&content="+content.value+"&newsid="+newsid.value,getfb);
  }
  function getfb(xmlDom) //评论提交后所触发的事件,更新评论列表
  {
  var msg=document.getElementById("msg");
  msg.innerText=xmlDom.responseText;
  loadXML("get","pl_list.asp",getList);
  }

  服务器处理程序

  根据JS代码页的分段介绍,我们了解此系统的功能大致包括评论的显示处理、评论的删除处理、评论的提交处理三个功能,那么我们就根据这三个功能分别介绍。

  评论的显示处理页面:pl_list.asp

  此程序为asp生成xml文件,通过分页的方式将评论的内容以XML的形式呈现出来,我们可以单独运行。

9 7 3 1 2 3 4 4 8 :

  把此文章收藏到:          
广而告之
文章搜索
  • Google JZxue.Com

关于我们 | 联系我们 | 友情链接 | 网站地图
Copyright © 2005 - 2006 建站学 All rights reserved.