随笔-15  评论-112  文章-4  trackbacks-0


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

//JScript.js

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

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

33    }

 //VBScript.vbs

 1function bytes2BSTR(vIn) 
 2   dim strReturn,i,ThisCharCode,innerCode,Hight8,Low8,NextCharCode 
 3   strReturn="" 
 4   for i=1 to LenB(vIn) 
 5   ThisCharCode=AscB(MidB(vIn,i,1)) 
 6   if ThisCharCode<&H80 Then 
 7   strReturn=strReturn & Chr(ThisCharCode) 
 8   else 
 9   NextCharCode=AscB(MidB(vIn,i+1,1)) 
10   strReturn=strReturn&Chr(CLng(ThisCharCode)*&H100+CInt(NextCharCode)) 
11   i=i+1 
12   end if 
13   next 
14   bytes2BSTR=strReturn 
15   end function 
16

 

Code
有不对写的不好的地方 请园子里的各位高手多多指教,提
输入城市名称后,点击按钮显示如下结果:

posted on 2007-12-15 14:39 .NET的春天 阅读(453) 评论(4)  编辑 收藏 网摘 所属分类: .NET技术

评论:
#1楼  2007-12-15 19:35 | 林松斌      
哈哈,我也是刚学Ajax的,有机会我也来试试~~
  回复  引用  查看    
#2楼 [楼主] 2007-12-17 06:20 | .NET的春天      
恩,互相学习!
  回复  引用  查看    
#3楼  2007-12-28 14:21 | eee [未注册用户]
这个不行 xhr无法跨域访问
  回复  引用    
#4楼  2007-12-30 11:12 | mjgforever      
当浏览器安全级别高的时候,可能显示不出来。 跨域访问最好在服务器端完成。(个人见解)

  回复  引用  查看    

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-12-15 19:04 编辑过
Google站内搜索
[推荐职位]上海盛大网络招聘架构师



China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》

相关文章:

相关链接: