CNET中国旗舰网站

ZDNet China | CNET科技资讯网 | 政府采购 | 行业网站联盟





 
标题: [转贴] 请求各位朋友帮忙,为什么只有IE正常,FF,OPERA不行呢?
mz89757053
版主
Rank: 7Rank: 7Rank: 7


UID 304999
精华 0
积分 6933
帖子 8295
威望 116
ZD币 1002 元
阅读权限 250
注册 2008-3-10
状态 离线
  楼主
发表于 2008-3-18 12:37  资料  个人空间  短消息  加为好友 
开发者在线

请求各位朋友帮忙,为什么只有IE正常,FF,OPERA不行呢?

<html>   
   
  <head>   
  <meta   http-equiv="Content-Type"   c>   
  <meta   name="GENERATOR"   c>   
  <meta   name="ProgId"   c>   
  <title>New   Page   1</title>   
   
   
  <script   language="JavaScript">   
  var   oBao   
  function   createXMLHttpRequest()   {   
  if   (window.XMLHttpRequest)   {//Mozilla浏览器   
  oBao   =   new   XMLHttpRequest();   
  }   
  else   if   (window.ActiveXObject)   {//IE浏览器   
  try   {   
  oBao   =   new   ActiveXObject("Msxml2.XMLHTTP");   
  }   catch   (e)   {   
  try   {   
  oBao   =   new   ActiveXObject("Microsoft.XMLHTTP");   
  }   catch   (e)   {}   
  }   
  }   
  }   
   
  function   GetResult()   
  {   
  /*   
    *---------------   GetResult()   -----------------   
    *   GetResult()   
    *   功能:通过XMLHTTP发送请求,返回结果.   
    *   参数:str,字符串,发送条件.   
    *   实例:GetResult();   
    *   author:wanghr100(灰豆宝宝.net)   
    *   update:2004-5-27   19:02   
    *---------------   GetResult()   -----------------   
    */   
          //if   (window.ActiveXObject)   {   
          // oBao   =   new   ActiveXObject("Microsoft.XMLHTTP");   
          //}   
          //else   if   (window.XMLHttpRequest)   {   
          // oBao   =   new   XMLHttpRequest();   
          //}   
            
          createXMLHttpRequest();   
            
            
          //特殊字符:+,%,&,=,?等的传输解决办法.字符串先用escape编码的.   
          //Update:2004-6-1   12:22   
          oBao.open("POST","Server.asp",false);   
          oBao.send();   
          //服务器端处理返回的是经过escape编码的字符串.   
          var   strResult   =   unescape(oBao.responseText);   
          //将字符串分开.   
          var   arrResult   =   strResult.split("###");   
          RemoveRow();   //删除以前的数据.   
          //将取得的字符串分开,并写入表格中.   
          for(var   i=0;i<arrResult.length;i++)   
          {   
                  arrTmp   =   arrResult.split("@@@");   
                  num1   =   arrTmp[0];   //字段num1的值   
                  num2   =   arrTmp[1];   //字段num2的值   
                  row1   =   tb.insertRow();   
                  cell1   =   row1.insertCell();   
                  cell1.innerText   =   num1;   
                  cell2   =   row1.insertCell();   
                  cell2.innerText   =   num2;   
          }   
  }   
   
  function   RemoveRow()   
  {   
          //保留第一行表头,其余数据均删除.   
          var   iRows   =   tb.rows.length;   
          for(var   i=0;i<iRows-1;i++)   
          {   
                  tb.deleteRow(1);   
          }   
  }   
   
  function   MyShow()   
  {   
          //2秒自动刷新一次,2秒取得一次数据.   
          timer   =   window.setInterval("GetResult()",2000);   
  }   
  </script>   
   
  </head>   
   
  <body   >   
  <p>   
  </p>   
  <table   width="47%"   height="23"     border="0"   cellpadding="1"   cellspacing="0"   id="tb">   
      <tr>   
          <td>num1</td>   
          <td>num2</td>   
      </tr>   
  </table>   
   
  </body>   
   
  </html>   
   
   
  SERVER.ASP   
   
  <%   @Language="JavaScript"   %>   
  <%   
  function   OpenDB(sdbname)   
  {   
  /*   
    *---------------   OpenDB(sdbname)   -----------------   
    *   OpenDB(sdbname)   
    *   功能:打开数据库sdbname,返回conn对象.   
    *   参数:sdbname,字符串,数据库名称.   
    *   实例:var   conn   =   OpenDB("database.mdb");   
    *   author:wanghr100(灰豆宝宝.net)   
    *   update:2004-5-12   8:18   
    *---------------   OpenDB(sdbname)   -----------------   
    */   
          var   connstr   =   "Provider=Microsoft.Jet.OLEDB.4.0;   Data   Source="+Server.MapPath(sdbname);   
          var   conn   =   Server.CreateObject("ADODB.Connection");   
          conn.Open(connstr);   
          return   conn;   
  }   
  var   sResult   =   new   Array();   
  var   oConn   =   OpenDB("alluserb.mdb");   
  //特殊字符:+,%,&,=,?等的传输解决办法.客户端字符是经过escape编码的   
  //所以服务器端先要经过unescape解码.   
  //Update:2004-6-1   12:22   
  var   sql   =   "select   id,name,dt   from   alluser   order   by   id";   
  var   rs   =   oConn.Execute(sql);   
  while(!rs.EOF)   
  {   
          //一条记录用"###"隔开.每列数据用"@@@"隔开.   这是以只有两个列数据的情况.   
          sResult[sResult.length]   =   rs("name").Value   +   "@@@"   +   rs("dt").Value   
          rs.MoveNext();   
  }   
  //escape解决了XMLHTTP。中文处理的问题.   
  Response.Write(escape(sResult.join("###")));   
  %>




顶部
mz89757053
版主
Rank: 7Rank: 7Rank: 7


UID 304999
精华 0
积分 6933
帖子 8295
威望 116
ZD币 1002 元
阅读权限 250
注册 2008-3-10
状态 离线
  沙发
发表于 2008-3-18 12:37  资料  个人空间  短消息  加为好友 
老是在"oBao.send();"这行出错,出错信息为"DATA:NO"




顶部
热点频道推荐: C/S开发| 数据库| WEB开发| 嵌入式| 项目管理|
 



当前时区 GMT+8, 现在时间是 2009-7-4 18:36

  Powered by Discuz! 5.5.0 © 2001-2007 Comsenz Inc.
Processed in 0.073213 second(s), 3/3 queries

清除 Cookies - 联系我们 - ZDNetChina中文社区 - 无图版