ajax請求json資料案例詳解_AJAX相關

來源:互聯網
上載者:User

今天有這樣一個需求,點擊六個大洲,出現對應的一些請求資訊,展示在下面,請求請求過後,第二次點擊就無需請求。
如圖所示:點擊北美洲下面出現請求的一些資料

html代碼結構:

<div class="conSixmap">  <div class="name conmap01" data-name="beimeizhou">    <a href="javascript:void(0)">北美洲</a>    <div class="condetail"></div>  </div>  <div class="name conmap02" data-name="nanmeizhou">    <a href="javascript:void(0)">南美洲</a>    <div class="condetail"></div>  </div>  <div class="name conmap03" data-name="ouzhou">    <a href="javascript:void(0)">歐洲</a>    <div class="condetail"></div>  </div>  <div class="name conmap04" data-name="feizhou">    <a href="javascript:void(0)">非洲</a>    <div class="condetail"></div>  </div>  <div class="name conmap05" data-name="yazhou">    <a href="javascript:void(0)">亞洲</a>    <div class="condetail"></div>  </div>  <div class="name conmap06" data-name="dayangzhou">    <a href="javascript:void(0)">大洋洲</a>    <div class="condetail"></div>  </div></div> 

css樣式:

.conSixmap{position:relative;width:678px;height:335px;margin:0 auto;background:url(../images/tuanduimapBg.png) no-repeat;color:#000;font-family:"微軟雅黑"}.conSixmap .name .condetail{display:none;position:absolute;z-index:10;width:216px;padding:10px;left:50%;margin-left:-118px;top:54px;background:url(../images/opcity83.png) repeat;border-radius:5px;}.conSixmap .condetail span{display:block;color:#fff;font-size:14px;text-align:left;}.conSixmap .name{position:absolute;width:52px;height:55px;}.conSixmap .name a{display:block;z-index:2;position:absolute;padding-top:35px;text-align:center;cursor:pointer;width:52px;height:20px;color:#000;font-size:12px;}.conSixmap .conmap01{left:91px;top:73px;}.conSixmap .conmap01 a{background:url(../images/beimeipicBg.png) no-repeat top center;}.conSixmap .conmap02 {left:180px;top:213px;}.conSixmap .conmap02 a{background:url(../images/nanmeimapbg.png) no-repeat top center;}.conSixmap .conmap03 {left:339px;top:68px;}.conSixmap .conmap03 a{background:url(../images/ouzhoumapBg.png) no-repeat top center;}.conSixmap .conmap04{left:327px;top:158px;}.conSixmap .conmap04 a{background:url(../images/feizhoumapbg.png) no-repeat top center;}.conSixmap .conmap05 {left:480px;top:75px;}.conSixmap .conmap05 a{background:url(../images/yazhoumapBg.png) no-repeat top center;}.conSixmap .conmap06 {left:545px;top:220px;}.conSixmap .conmap06 a{background:url(../images/dayangmapbg.png) no-repeat top center;}

json格式:

{  "beimeizhou": [    "請求的json資料1",    "請求的json資料2"  ],  "nanmeizhou": [    "請求的json資料3",    "請求的json資料4"  ],  "ouzhou": [    "請求的json資料5",    "請求的json資料6",    "請求的json資料7",    "請求的json資料8"  ],  "feizhou": [    "請求的json資料9",    "請求的json資料10",    "請求的json資料11",    "請求的json資料12"  ],  "yazhou": [    "請求的json資料13",    "請求的json資料14"  ],  "dayangzhou": [    "請求的json資料15",    "請求的json資料16"  ]}

js代碼:

$(document).ready(function(){  //添加地圖  var stauteArr={      'beimeizhou':'true',      'nanmeizhou':'true',      'ouzhou':'true',      'feizhou':'true',      'yazhou':'true',      'dayangzhou':'true'    };  $(".conSixmap .name").on('click',function(){    var _this=this;    var htmlcon="";    $(this).siblings(".name").children(".condetail").fadeOut(500);    $(this).children(".condetail").fadeIn(500);    var _name=$(this).attr('data-name');     $.ajax({      url:"js/schoolMap.json",      type:'get',      data:{},      dataType:"json",      success: function(data){        for(var i in data){          if(_name==i && stauteArr[i]=='true'){            for(var j=0;j<data[i].length;j++){               htmlcon+="<span>"+data[i][j]+"</span>";            }            $(_this).children(".condetail").append(htmlcon);            stauteArr[i]='false';          }        }      },      error: function(){        alert('請求失敗,請檢查網路');      }    });  });});

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.