AJAX技术 vs 传统的ASP无刷新技术

时间:2008-10-07 12:23:35  来源:第二电脑网上收集  作者:

  第二电脑网导读:bsp;      用ajax技术实现        代码: t.htm      <script>   function f(){   var req =new ActiveXObject("Microsoft.XMLHTTP");   req.open("GET","t.asp?t1="+t1.value, true);   re...
  正文: Ajax技术的优势到底在哪里呢,不明白。看一个最简单的例子,假设用户注册的时候,判断用户输入的名字是否已经被占用,假设输入数字1:显示"OK"(表示正确,可以使用);输入其他字符:显示"Error" (表示错误,已经被占用)。
  
    用ajax技术实现
  
    代码: t.htm
  
  <script>
  function f(){
  var req =new ActiveXObject("Microsoft.XMLHTTP");
  req.open("GET","t.ASP/ target=_blank class=infotextkey>asp?t1="+t1.value, true);
  req.onreadystatechange = function(){
    if (req.readyState == 4) {
    if (req.status == 200) {
     msg.innerText = req.responseXML.documentElement.tagName;
  }
  }
  }
  req.send(null);
  }
  </script>
  <div>1:显示"OK"; 其他字符:显示"Error"</div>
  <input id=t1 value=1>
  <input type=button value="检测" onclick="JavaScript:f()">
  <div id=msg></div>
  
  
    代码:
  
  t.asp
  <%
  Response.ContentType="text/xml"
  if request.querystring("t1")="1" then
  response.write("<OK/>")
  else
  response.write("<ERROR/>")
  end if
  %>
  
    传统的asp无刷新技术
  
    代码t.htm
  
  <script>
  function f(){
  document.getElementById("o").src="t.asp?t1="+t1.value
  }
  </script>
  <div>1:显示"OK"; 其他字符:显示"Error"</div>
  <input id=t1 name=1 value=1>
  <input type=button value="检测" onclick="javascript:f()">
  <div id=msg></div>
  <iframe src="t.asp" style="display:none" id=o></iframe>
  
    代码t.asp
  
  <%
  if request.querystring="" then response.end
  ss="ERROR"
  if request.querystring("t1")="1" then ss="OK"
  %>
  <script>parent.msg.innerText="<%=ss%>"</script>
  
    两者都是无刷新提取服务器(数据库)数据并实时显示在客户段,那为什么现在都要用 ajax呢,还要考虑中文编码等麻烦问题。ajax到底好在哪里,请高手详细说说,我可是一知半解,还没有领会到 ajax的妙处。
  
    在这里,我们暂时只讨论 ajax 调用同域下的asp文件(也就是说自己写的asp程序),小偷程序,偷取新闻,天气预报等应用技术暂时不讨论
  ,例子写得很简,没有进行错误处理等,仅为讨论之用。

AJAX技术 vs 传统的ASP无刷新技术》由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Programming/ASP/2008-10-07/3507.html


关键字:

关于《AJAX技术 vs 传统的ASP无刷新技术》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td