JQuery ajax json怎样 获取外网数据

求知_攀登者 2013-01-30 10:34:28
下面这种写法对吗?应该怎么写?望大神指点!!

$(function(){

$.ajax({
type:"post",
url:"http://m.weather.com.cn/data/101010100.html", //中央台天气预报
dataType:"json",
success:function(data){
var test = eval(data);
alert(1); //这个都没有反应啊T_T
alert(test.weatherinfo.city);
}
});
})
...全文
1936 22 点赞 打赏 收藏 举报
写回复
22 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
平静的水 2014-05-22
引用
#11
post->get
  • 打赏
  • 举报
回复
平静的水 2014-05-22
楼主只需将post改为get就可以了!!
引用
  • 打赏
  • 举报
回复
yang218589 2014-01-21
楼主能帮你的代码给我一份看看吗
  • 打赏
  • 举报
回复
羊茂林 2013-09-25
引用 18 楼 Q1761991696 的回复:
[quote=引用 1 楼 datiexiong 的回复:] 引用 楼主 Q1761991696 的回复:下面这种写法对吗?应该怎么写?望大神指点!! JavaScript code?12345678910111213$(function(){ $.ajax({ type:"post", url:"http://m.weather.com.cn/data/101010100.html", //……
事实证明,您就一个地方疏忽了http://query.yahooapis.com/v1/public/yql改成http://query.yahooapis.com/v1/public/yql?callback=?就行了 谢谢啊!!![/quote] 刚才测试,IE必须加上callback=?,火狐和谷歌浏览器可以不加。
  • 打赏
  • 举报
回复
色拉油 2013-01-31
跨域要用jsonp
  • 打赏
  • 举报
回复
爱若如梦 2013-01-31
引用 8 楼 Q1761991696 的回复:
引用 1 楼 datiexiong 的回复:引用 楼主 Q1761991696 的回复:下面这种写法对吗?应该怎么写?望大神指点!! JavaScript code?12345678910111213$(function(){ $.ajax({ type:"post", url:"http://m.weather.com.cn/da……
不是吧难道你不能访问http://query.yahooapis.com/v1/public/yql以及配置jquery的正确路径?
  • 打赏
  • 举报
回复
求知_攀登者 2013-01-31
引用 1 楼 datiexiong 的回复:
引用 楼主 Q1761991696 的回复:下面这种写法对吗?应该怎么写?望大神指点!! JavaScript code?12345678910111213$(function(){ $.ajax({ type:"post", url:"http://m.weather.com.cn/data/101010100.html", //……
还是获取不到数据
  • 打赏
  • 举报
回复
求知_攀登者 2013-01-31
引用 1 楼 datiexiong 的回复:
引用 楼主 Q1761991696 的回复:下面这种写法对吗?应该怎么写?望大神指点!! JavaScript code?12345678910111213$(function(){ $.ajax({ type:"post", url:"http://m.weather.com.cn/data/101010100.html", //……
事实证明,您就一个地方疏忽了http://query.yahooapis.com/v1/public/yql改成http://query.yahooapis.com/v1/public/yql?callback=?就行了 谢谢啊!!!
  • 打赏
  • 举报
回复
求知_攀登者 2013-01-31
引用 15 楼 datiexiong 的回复:
引用 14 楼 Q1761991696 的回复:引用 1 楼 datiexiong 的回复:引用 楼主 Q1761991696 的回复:下面这种写法对吗?应该怎么写?望大神指点!! JavaScript code?12345678910111213$(function(){ $.ajax({ type:"post", url:"ht……
谢谢,明白了,我得到数据了,给您纠正几个地方 1.http://query.yahooapis.com/v1/public/yql改成http://query.yahooapis.com/v1/public/yql?callback=? 2.data.query.results改成data.results 我得到的数据成xml的了,不过总算有数据了,谢谢!!那个xml的可以转json吗?
  • 打赏
  • 举报
回复
kinger906 2013-01-31
可以自己写一个后台,通过HttpWebRequest类获取指定域名下页面元素,然后再进行过滤提取你想要的内容,拼接成json结构传到前台,你就可以直接进行操作了。
  • 打赏
  • 举报
回复
爱若如梦 2013-01-31
引用 14 楼 Q1761991696 的回复:
引用 1 楼 datiexiong 的回复:引用 楼主 Q1761991696 的回复:下面这种写法对吗?应该怎么写?望大神指点!! JavaScript code?12345678910111213$(function(){ $.ajax({ type:"post", url:"http://m.weather.com.cn/da……
$.getJSON("http://query.yahooapis.com/v1/public/yql", { q: "select * from json where url='http://m.weather.com.cn/data/101010100.html'" 这是使用雅虎的服务做代理,取到值然后转成json,数据的来源还是这个http://m.weather.com.cn/data/101010100.html
  • 打赏
  • 举报
回复
求知_攀登者 2013-01-31
引用 1 楼 datiexiong 的回复:
引用 楼主 Q1761991696 的回复:下面这种写法对吗?应该怎么写?望大神指点!! JavaScript code?12345678910111213$(function(){ $.ajax({ type:"post", url:"http://m.weather.com.cn/data/101010100.html", //……
你确定你这个不是针对yahoo的吗?我用的是中央气象台的API,这个通用的么?
  • 打赏
  • 举报
回复
Kilin_Zhang 2013-01-31
引用 11 楼 Q1761991696 的回复:
引用 10 楼 TheDolphin 的回复:跨域要用jsonp $(function(){ $.ajax({ type:"post", url:"http://m.weather.com.cn/data/101010100.html", //中央台天气预报 dataType:"jsonp",//这……
jsonp不是这样用的。 jsonp不是个标准的东东,不建议用。楼主可以换个思路,写个专门的服务去访问其他网站的服务,也就是把天气预报的服务在你的网站进行一次包装,然后在页面是用ajax调用自己的服务也可以达到效果。
  • 打赏
  • 举报
回复
求知_攀登者 2013-01-31
引用 9 楼 datiexiong 的回复:
引用 8 楼 Q1761991696 的回复:引用 1 楼 datiexiong 的回复:引用 楼主 Q1761991696 的回复:下面这种写法对吗?应该怎么写?望大神指点!! JavaScript code?12345678910111213$(function(){ $.ajax({ type:"post", url:"htt……
有一点不明白,这个是必须的吗?难道那不是针对yahoo的?请赐教啊!还有,必须要有后台代码吗?初学,如果问题白痴,勿喷啊,望赐教!
  • 打赏
  • 举报
回复
求知_攀登者 2013-01-31
引用 10 楼 TheDolphin 的回复:
跨域要用jsonp
$(function(){ $.ajax({ type:"post", url:"http://m.weather.com.cn/data/101010100.html", //中央台天气预报 dataType:"jsonp",//这样吗? success:function(data){ var test = eval(data); alert(1); //这个都没有反应啊T_T alert(test.weatherinfo.city); } }); })
  • 打赏
  • 举报
回复
求知_攀登者 2013-01-30
引用 5 楼 luanjiyang 的回复:
还有一个比较不严谨的做法。 自己写个servlet,然后用URL类,解析你那个页面的所有元素。 把想要数据解析出来。 前台ajax调自己这个servlet。
我这是ASP.NET C#语言的T_T
  • 打赏
  • 举报
回复
MakeUrChois 2013-01-30
还有一个比较不严谨的做法。 自己写个servlet,然后用URL类,解析你那个页面的所有元素。 把想要数据解析出来。 前台ajax调自己这个servlet。
  • 打赏
  • 举报
回复
代理要用服务器支持的,代理页面用服务器端的xhr对象捉去远程数据分析后输出,ajax请求这个代理页面,参考这个:使用新浪天气预报接口获取天气预报信息
  • 打赏
  • 举报
回复
求知_攀登者 2013-01-30
引用 2 楼 showbo 的回复:
跨域了你那个页面,又没提供jsonp回调,只能做代理
是呢,应该怎么做,请赐教啊~
  • 打赏
  • 举报
回复
跨域了你那个页面,又没提供jsonp回调,只能做代理
  • 打赏
  • 举报
回复
加载更多回复
相关推荐
发帖
JavaScript
加入

8.5w+

社区成员

Web 开发 JavaScript
申请成为版主
帖子事件
创建了帖子
2013-01-30 10:34
社区公告
暂无公告