ajax回顧

ajax優(yōu)勢
一次http請求對應(yīng)一個(gè)頁面
ajax,局部刷新頁面缰雇,客戶端(瀏覽器)就能與服務(wù)端進(jìn)行通信
異步加載數(shù)據(jù),無需切換頁面

ajax請求過程:

  1. 創(chuàng)建XMLHttpRequest對象,也就是創(chuàng)建一個(gè)異步調(diào)用對象
  2. 創(chuàng)建一個(gè)新的HTTP請求,并指定該HTTP請求的方法嘹屯、URL及驗(yàn)證信息
  3. 設(shè)置響應(yīng)HTTP請求狀態(tài)變化的函數(shù)
  4. 發(fā)送HTTP請求
  5. 獲取異步調(diào)用返回的數(shù)據(jù)
  6. 使用JavaScript和DOM實(shí)現(xiàn)局部刷新

js原生方法請求json數(shù)據(jù):
網(wǎng)址:http://developer.baidu.com/map/carapi-7.htm

<select id="city">
        <option value="北京">北京</option>
        <option value="上海">上海</option>
        <option value="深圳">深圳</option>
        <option value="廣州">廣州</option>
    </select>
    <div id="detail"></div>
    <script type="text/javascript">
        var city = document.getElementById('city');
        var detail = document.getElementById('detail');
        function addURI(url,name,value){
              url += url.indexOf('?')==-1?'?':'&';
              //encodeURIComponent() 函數(shù)可把字符串作為 URI 組件進(jìn)行編碼。
              url += encodeURLComponent(name)+"="+encodeURLComponent(value);
              return url;
        }
        city.onchange = function(){
            //創(chuàng)建對象    兼容le
            if(window.XMLHttpRequest){
                var xhr = new XMLHttpRequest();
            }else{
                var xhr = new ActiveXObject('Microsoft.XMLHTTP')
            }
            var url =addURI('weather.php','city',this.value);
            xhr.onload = function(){
                //狀態(tài)碼 status 200=ok  404="未找到"
                if(xhr.status>=200&&xhr.status<300||xhr.status==304){
                     console.log(xhr.responseText);
                    //JSON.parse()方法將一個(gè) JSON字符串解析成一個(gè)javascript值从撼。
                    var res = JSON.parse(xhr.responseText);
                    //基于json數(shù)組
                    var today = res.results[0].weather_data[0];
                    console.log(today);
                    //定義一個(gè)變量儲(chǔ)存輸出
                    var html = "";
                    //  for   in  循環(huán)數(shù)組
                    for(var a in today){
                        html += today[a]+"<br>";
                    }
                    detail.innerHTML = html;
                }else{
                    console.log('error='+xhr.status);
                }
            }
            //響應(yīng)  true(異步)或 false(同步)
            xhr.open('get',url,true);
            xhr.send(null);
        }
    </script>

php:

<?php
    header('Content-Type:text/html;charset=utf8');
    $city = $_GET["city"];
    $url = "http://api.map.baidu.com/telematics/v3/weather?location=".$city."&output=json&ak=cTk2xI05KkdzSdC2oMqpu8WHX0puzdBo";
    echo file_get_contents($url);
 ?>

jq ajax方法:

<body>
    <input type="text" id="word">
    <div id="detail"></div>
    <script src="jquery-1.11.3.min.js" charset="utf-8"></script>
    <script type="text/javascript">
    var detail = document.getElementById('detail');
        $("#word").on('input',function(){
            $.ajax({
                //請求地址
                url:'https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd='+$(this).val()+'&json=1&cb=?',
                type:'GET',        //請求類型
                dataType:'jsonp',    //預(yù)期請求數(shù)據(jù)類型
                success:function(res){
                    //成功的回調(diào)
                    console.log(res.s)
                    var xyy = res.s
                    var html ="";
                    for(var a in xyy){
                      html += xyy[a] + "<br>";
                    }
                    detail.innerHTML = html
                },
                error:function(err){
                    console.log(err)
                }
            })
        })
    </script>
</body>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末州弟,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子低零,更是在濱河造成了極大的恐慌婆翔,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,451評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掏婶,死亡現(xiàn)場離奇詭異啃奴,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)雄妥,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評論 3 394
  • 文/潘曉璐 我一進(jìn)店門最蕾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人老厌,你說我怎么就攤上這事瘟则。” “怎么了枝秤?”我有些...
    開封第一講書人閱讀 164,782評論 0 354
  • 文/不壞的土叔 我叫張陵壹粟,是天一觀的道長。 經(jīng)常有香客問我宿百,道長趁仙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,709評論 1 294
  • 正文 為了忘掉前任垦页,我火速辦了婚禮雀费,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘痊焊。我一直安慰自己盏袄,他們只是感情好忿峻,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,733評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著辕羽,像睡著了一般逛尚。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上刁愿,一...
    開封第一講書人閱讀 51,578評論 1 305
  • 那天绰寞,我揣著相機(jī)與錄音,去河邊找鬼铣口。 笑死滤钱,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的脑题。 我是一名探鬼主播件缸,決...
    沈念sama閱讀 40,320評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼叔遂!你這毒婦竟也來了他炊?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,241評論 0 276
  • 序言:老撾萬榮一對情侶失蹤已艰,失蹤者是張志新(化名)和其女友劉穎佑稠,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體旗芬,經(jīng)...
    沈念sama閱讀 45,686評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,878評論 3 336
  • 正文 我和宋清朗相戀三年捆蜀,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了疮丛。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,992評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡辆它,死狀恐怖誊薄,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情锰茉,我是刑警寧澤呢蔫,帶...
    沈念sama閱讀 35,715評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站飒筑,受9級特大地震影響片吊,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜协屡,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,336評論 3 330
  • 文/蒙蒙 一俏脊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧肤晓,春花似錦爷贫、人聲如沸认然。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽卷员。三九已至,卻和暖如春腾务,著一層夾襖步出監(jiān)牢的瞬間毕骡,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評論 1 270
  • 我被黑心中介騙來泰國打工窑睁, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留挺峡,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,173評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親烫沙。 傳聞我的和親對象是個(gè)殘疾皇子饮睬,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,947評論 2 355

推薦閱讀更多精彩內(nèi)容