XMLHttpRequest异步调用实现调用新浪天气预报页面


没学习AJAX之前,最在想如何调用别人网页的内容,页且还要过滤其它不需要的内容,如何实现了,学到异步调用后,就可以实现了,闲话少话,先看代码;

//JScript.js

 1XMLHttpRequest异步调用实现调用新浪天气预报页面// JScript 文件
 2XMLHttpRequest异步调用实现调用新浪天气预报页面
 3XMLHttpRequest异步调用实现调用新浪天气预报页面    var xmlhttp;
 4XMLHttpRequest异步调用实现调用新浪天气预报页面    function getWeather()
 5XMLHttpRequest异步调用实现调用新浪天气预报页面XMLHttpRequest异步调用实现调用新浪天气预报页面    XMLHttpRequest异步调用实现调用新浪天气预报页面{
 6XMLHttpRequest异步调用实现调用新浪天气预报页面        //获取用户输入的城市名称
 7XMLHttpRequest异步调用实现调用新浪天气预报页面          var mycity=document.getElementById("txtCity").value;
 8XMLHttpRequest异步调用实现调用新浪天气预报页面        //创建异步对象
 9XMLHttpRequest异步调用实现调用新浪天气预报页面          xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
10XMLHttpRequest异步调用实现调用新浪天气预报页面        //加载服务器-注意URL参数的使用
11XMLHttpRequest异步调用实现调用新浪天气预报页面        
12XMLHttpRequest异步调用实现调用新浪天气预报页面          xmlhttp.Open("GET","http://php.weather.sina.com.cn/search.php?city="+mycity,true)
13XMLHttpRequest异步调用实现调用新浪天气预报页面          xmlhttp.onreadystatechange=stateChange;
14XMLHttpRequest异步调用实现调用新浪天气预报页面       //发送请求-无参数
15XMLHttpRequest异步调用实现调用新浪天气预报页面          xmlhttp.Send();
16XMLHttpRequest异步调用实现调用新浪天气预报页面    }

17XMLHttpRequest异步调用实现调用新浪天气预报页面    function stateChange()
18XMLHttpRequest异步调用实现调用新浪天气预报页面XMLHttpRequest异步调用实现调用新浪天气预报页面    XMLHttpRequest异步调用实现调用新浪天气预报页面{
19XMLHttpRequest异步调用实现调用新浪天气预报页面       if(xmlhttp.readystate==4 && xmlhttp.status==200)
20XMLHttpRequest异步调用实现调用新浪天气预报页面XMLHttpRequest异步调用实现调用新浪天气预报页面       XMLHttpRequest异步调用实现调用新浪天气预报页面{
21XMLHttpRequest异步调用实现调用新浪天气预报页面          //获取所有返回的数据
22XMLHttpRequest异步调用实现调用新浪天气预报页面          var data=bytes2BSTR(xmlhttp.ResponseBody);
23XMLHttpRequest异步调用实现调用新浪天气预报页面         
24XMLHttpRequest异步调用实现调用新浪天气预报页面          //过滤自己需要的数据
25XMLHttpRequest异步调用实现调用新浪天气预报页面          var begin=data.indexOf("天气状况 begin");
26XMLHttpRequest异步调用实现调用新浪天气预报页面          var end=data.indexOf("天气状况 end");
27XMLHttpRequest异步调用实现调用新浪天气预报页面          var weather=data.substring(begin+15,end);
28XMLHttpRequest异步调用实现调用新浪天气预报页面          //填充天气内容
29XMLHttpRequest异步调用实现调用新浪天气预报页面          document.getElementById("divweather").innerHTML=weather;
30XMLHttpRequest异步调用实现调用新浪天气预报页面          //显示结果
31XMLHttpRequest异步调用实现调用新浪天气预报页面          document.getElementById("divweather").style.visibility="visible";
32XMLHttpRequest异步调用实现调用新浪天气预报页面       }

33XMLHttpRequest异步调用实现调用新浪天气预报页面    }

 //VBScript.vbs

 1XMLHttpRequest异步调用实现调用新浪天气预报页面function bytes2BSTR(vIn) 
 2XMLHttpRequest异步调用实现调用新浪天气预报页面   dim strReturn,i,ThisCharCode,innerCode,Hight8,Low8,NextCharCode 
 3XMLHttpRequest异步调用实现调用新浪天气预报页面   strReturn="" 
 4XMLHttpRequest异步调用实现调用新浪天气预报页面   for i=1 to LenB(vIn) 
 5XMLHttpRequest异步调用实现调用新浪天气预报页面   ThisCharCode=AscB(MidB(vIn,i,1)) 
 6XMLHttpRequest异步调用实现调用新浪天气预报页面   if ThisCharCode<&H80 Then 
 7XMLHttpRequest异步调用实现调用新浪天气预报页面   strReturn=strReturn & Chr(ThisCharCode) 
 8XMLHttpRequest异步调用实现调用新浪天气预报页面   else 
 9XMLHttpRequest异步调用实现调用新浪天气预报页面   NextCharCode=AscB(MidB(vIn,i+1,1)) 
10XMLHttpRequest异步调用实现调用新浪天气预报页面   strReturn=strReturn&Chr(CLng(ThisCharCode)*&H100+CInt(NextCharCode)) 
11XMLHttpRequest异步调用实现调用新浪天气预报页面   i=i+1 
12XMLHttpRequest异步调用实现调用新浪天气预报页面   end if 
13XMLHttpRequest异步调用实现调用新浪天气预报页面   next 
14XMLHttpRequest异步调用实现调用新浪天气预报页面   bytes2BSTR=strReturn 
15XMLHttpRequest异步调用实现调用新浪天气预报页面   end function 
16XMLHttpRequest异步调用实现调用新浪天气预报页面

 

XMLHttpRequest异步调用实现调用新浪天气预报页面XMLHttpRequest异步调用实现调用新浪天气预报页面Code
XMLHttpRequest异步调用实现调用新浪天气预报页面<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" 
XMLHttpRequest异步调用实现调用新浪天气预报页面
XMLHttpRequest异步调用实现调用新浪天气预报页面Inherits
="_Default" %>
XMLHttpRequest异步调用实现调用新浪天气预报页面
XMLHttpRequest异步调用实现调用新浪天气预报页面
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
XMLHttpRequest异步调用实现调用新浪天气预报页面
XMLHttpRequest异步调用实现调用新浪天气预报页面
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XMLHttpRequest异步调用实现调用新浪天气预报页面
XMLHttpRequest异步调用实现调用新浪天气预报页面
<html xmlns="http://www.w3.org/1999/xhtml" >
XMLHttpRequest异步调用实现调用新浪天气预报页面
<head runat="server">
XMLHttpRequest异步调用实现调用新浪天气预报页面    
<title>XmlHttpRequest异步调用实现天气预报的调用</title>
XMLHttpRequest异步调用实现调用新浪天气预报页面XMLHttpRequest异步调用实现调用新浪天气预报页面
/**//* 关键的两句先进行引用写好的异步调用脚本*/
XMLHttpRequest异步调用实现调用新浪天气预报页面    
<script type="text/vbscript" src="VBScript.vbs"></script>
XMLHttpRequest异步调用实现调用新浪天气预报页面    
<script type="text/javascript" src="JScript.js"></script>
XMLHttpRequest异步调用实现调用新浪天气预报页面
XMLHttpRequest异步调用实现调用新浪天气预报页面
</head>
XMLHttpRequest异步调用实现调用新浪天气预报页面
<body>
XMLHttpRequest异步调用实现调用新浪天气预报页面    
<form id="form1" runat="server">
XMLHttpRequest异步调用实现调用新浪天气预报页面        
<table style="width: 627px; height: 204px">
XMLHttpRequest异步调用实现调用新浪天气预报页面            
<tr height="30%">
XMLHttpRequest异步调用实现调用新浪天气预报页面                
<td >
XMLHttpRequest异步调用实现调用新浪天气预报页面                    输入城市
</td>
XMLHttpRequest异步调用实现调用新浪天气预报页面                
<td >
XMLHttpRequest异步调用实现调用新浪天气预报页面                    
<asp:TextBox ID="txtCity" runat="server" Text="
XMLHttpRequest异步调用实现调用新浪天气预报页面

XMLHttpRequest异步调用实现调用新浪天气预报页面
"></asp:TextBox></td>
XMLHttpRequest异步调用实现调用新浪天气预报页面
            </tr>
XMLHttpRequest异步调用实现调用新浪天气预报页面            
<tr  height="30%">
XMLHttpRequest异步调用实现调用新浪天气预报页面                
<td >
XMLHttpRequest异步调用实现调用新浪天气预报页面                
</td>
XMLHttpRequest异步调用实现调用新浪天气预报页面                
<td >
XMLHttpRequest异步调用实现调用新浪天气预报页面                    
<input id="btnWeather"  type="button" value="天气情况" 
XMLHttpRequest异步调用实现调用新浪天气预报页面
XMLHttpRequest异步调用实现调用新浪天气预报页面onclick
="getWeather()" /></td>
XMLHttpRequest异步调用实现调用新浪天气预报页面            
</tr>
XMLHttpRequest异步调用实现调用新浪天气预报页面             
<tr  height="40%">
XMLHttpRequest异步调用实现调用新浪天气预报页面             
<td colspan="2"  style="height: 31px">
XMLHttpRequest异步调用实现调用新浪天气预报页面              
<div id="divweather"></div> 
XMLHttpRequest异步调用实现调用新浪天气预报页面              
</td> </tr>  
XMLHttpRequest异步调用实现调用新浪天气预报页面            
</table>
XMLHttpRequest异步调用实现调用新浪天气预报页面    
</form>
XMLHttpRequest异步调用实现调用新浪天气预报页面
</body>
XMLHttpRequest异步调用实现调用新浪天气预报页面
</html>
XMLHttpRequest异步调用实现调用新浪天气预报页面
有不对写的不好的地方 请园子里的各位高手多多指教,提
输入城市名称后,点击按钮显示如下结果:

XMLHttpRequest异步调用实现调用新浪天气预报页面

转载于:https://www.cnblogs.com/accpxcb/archive/2007/12/15/AJax_weather-forecast.html