中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > .NET > 临时文章
厌倦了闪动的页面?来试试 javascript+WebService 吧!
作者:未知 时间:2005-07-27 21:39 出处:CSDN 责编:chinaitpower
              摘要:厌倦了闪动的页面?来试试 javascript+WebService 吧!

相信大家也遇到过这样的情况,在B/S的系统中即时的发送短消息,一般的办法是定时的刷新页面,但如果你也像我一样厌倦了不停闪动的页面,不妨来试试javascript+WebService的解决方法。

//deptCode是部门编号,用来检测是否有未读信息
function MoniMsg(deptCode)
 {
  var deptCode = document.getElementById("DeptCode").value;
  
  var myWebService="http://122.124.6.70/khmis/websvr/KH_Msg.asmx ";
  var myMethod="http://tempuri.org/hasNewMsg";

  var requestHttp=new ActiveXObject("Microsoft.XMLHTTP"); 
  
  var s="";  s=s + "<?xml version =\"1.0\" encoding=\"gb2312\"?>\n"
  s=s + "<soap:Envelope "
  s=s + "  xmlns:xsi=\" http://www.w3.org/2001/XMLSchema-instance\""
  s=s + "  xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\""
  s=s + "  xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">\n"
  s=s + "   <soap:Body>\n";
  
  //------------写入输入参数-----------------------------------------------
  s = s + "   <hasNewMsg xmlns=\"http://tempuri.org/\">\n";
  s = s + "    <deptCode>"+ deptCode +"</deptCode>\n";
  s = s + "    </hasNewMsg>\n";
  //-----------------------------------------------------------------------
  
  s=s + "   </soap:Body>\n"
  s=s + " </soap:Envelope>"
  
//这里是重点哟!
  requestHttp.Open("POST",myWebService,false);
  requestHttp.SetRequestheader("Content-Type","text/xml;Charset=gb2312");
  requestHttp.SetRequestheader("SOAPAction", myMethod);
  requestHttp.Send(s);
   
  res = requestHttp.ResponseXML;
  
  var pos1 = res.xml.indexOf("<hasNewMsgResult>");  
  var pos2 = res.xml.indexOf("</hasNewMsgResult>");
  
  var len = pos2 - pos1 - ("<hasNewMsgResult>").length;
  
  var result = res.xml.substr(pos1 + ("<hasNewMsgResult>").length , len);  

  if (document.getElementById("IsHasHistoryMsg").value == "no")
  {
   
  }
  else
  {
   if (result == "true")
   {
    document.getElementById("msg").innerHTML ="<A href='javascript:ShowNewMsg(deptCode)' style='color:blue;text-decoration:none' >&nbsp;&nbsp;<img src='../Images/mail.gif' border=0 alt='点击查看' style='POSITION: relative; TOP: 5px'   id='img1' name='img1'></a>";
   }
   else
   {
         document.getElementById("msg").innerHTML ="<A href='javascript:ShowAllMsg(deptCode)' style='color:blue;text-decoration:none'><img src='../Images/mail2.gif' border=0 alt='点击查看历史留言' style='LEFT: 10px; POSITION: relative; TOP:6px'></a>";
     }
  }   
 }
 
//WebService的代码很简单,就是查询数据库返回一个bool值,就不在这里写了,相信大家都能明白。函数在页面里这样使用window.setTimeout("MoniMsg("+deptCode+")",5000);,说完了,要不要赶快试一下?


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有