鍍金池/ 問答/HTML/ 如何調(diào)用API中的json然后顯示到網(wǎng)頁中....

如何調(diào)用API中的json然后顯示到網(wǎng)頁中....

又來麻煩大家?guī)兔α?以前是個設(shè)計師,剛接觸前端不久,上次就動態(tài)生成的問題感謝大家?guī)兔?這次的問題對我這種菜鳥來說簡直就是噩夢...
后臺的丟過來一個連接,說用ajax調(diào)用出來就好了,我百度了好久,復(fù)制粘貼了許多現(xiàn)成的代碼發(fā)現(xiàn)問題無法解決,所以再次不要臉的過來跟大家"求教(能幫寫下嗎)"

后臺小哥丟過來的 api地址api/OperateCms/GetOperateCMSList
可視化的json內(nèi)容

{
  "Status": true,
  "StatusMessage": "成功",
  "BackData": {
    "dataList": [
      {
        "OC_EditDateString": "2018/3/14 10:11:53",
        "Class_Name": "新聞中心",
        "OCLName": null,
        "EditName": "Admin",
        "OC_Id": 9,
        "OCC_Id": 2,
        "OC_Name": "娛樂新聞",
        "OC_Logo": "/Uploads/Images/2018/03/14/2018031408562077796.jpg",
        "OC_Content": "<p>最喜歡吃靜安寺肯定會行政村八年級擴散</p>",
        "OC_Enable": true,
        "AU_Id": 1,
        "OC_EditDate": "2018-03-14T10:11:53"
      },
      {
        "OC_EditDateString": "2018/3/13 15:15:03",
        "Class_Name": "官方公告",
        "OCLName": null,
        "EditName": "Admin",
        "OC_Id": 8,
        "OCC_Id": 1,
        "OC_Name": "文章測試4",
        "OC_Logo": "/Uploads/Images/2018/03/13/2018031315140675926.jpg",
        "OC_Content": "<p>測試內(nèi)容測試內(nèi)容測試內(nèi)容測試內(nèi)容測試內(nèi)容測試內(nèi)容</p>",
        "OC_Enable": true,
        "AU_Id": 1,
        "OC_EditDate": "2018-03-13T15:15:03"
      },
      {
        "OC_EditDateString": "2018/3/13 15:07:58",
        "Class_Name": "官方公告",
        "OCLName": null,
        "EditName": "Admin",
        "OC_Id": 7,
        "OCC_Id": 1,
        "OC_Name": "文章測試3",
        "OC_Logo": "/Uploads/Images/2018/03/13/2018031314522155208.jpg",
        "OC_Content": "<p>asdfsdafsdaf &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</p>",
        "OC_Enable": false,
        "AU_Id": 1,
        "OC_EditDate": "2018-03-13T15:07:58"
      }
    ]
  }
}

最后,各位大哥能否推薦幾本書,或者哪個視頻作者做的教學(xué)比較好的推薦下,

回答
編輯回答
挽歌

1.你這個地址是調(diào)取是的相對地址還是絕對地址,絕對地址的話應(yīng)該是http或者h(yuǎn)ttps開頭的
2.你調(diào)取的api有沒有涉及到跨域,有的話就用ajax的jsonp去調(diào)取

ajax文檔

2017年3月9日 05:55
編輯回答
別瞎鬧

《javascript權(quán)威指南》

2018年7月17日 18:03
編輯回答
毀了心

入門級的我還是覺得《javascript DOM編程藝術(shù)》適合你,然后想精進的話再上《javascript 高級程序設(shè)計》或《javascript 權(quán)威指南》

2018年9月19日 23:43
編輯回答
念初

呃,這種你不給頁面不太好幫你寫的呀……

好吧那就當(dāng)全是p標(biāo)簽擼咯。
首先你得引入個jQuery,怎么引入不多教,自己去搜,記得:

  1. <script>標(biāo)簽全部放到</body>前邊;
  2. 記得先引入、再調(diào)用。

另外,jQ文檔可以參考jQuery API 中文文檔

然后,考慮到后臺傳回來的是個JSON,所以可以用jQ的getJSON接口:

$.getJSON('api/OperateCms/GetOperateCMSList', function(json){ //這里的json代表成功調(diào)用后回傳的數(shù)據(jù)
    if (true === json.Status) { //先判斷下API是否調(diào)用正常
        //這里看著回傳回來的JSON數(shù)據(jù),把東西挨個回填到頁面上。
        //考慮到回來內(nèi)容放在一個數(shù)組里,所以要使用循環(huán)將它們挨個挖出來,這里可以使用jQ的each接口來做,比如:
        $.each(json.BackData.dataList, function(index, item) { //index是數(shù)組下標(biāo),item是數(shù)組內(nèi)容
            //這里填充你的頁面結(jié)構(gòu),我就隨便一寫,你先用假數(shù)據(jù)把頁面寫好,然后把結(jié)構(gòu)打散放到這里
            var pageItem = '<div class="item">';
                pageItem += '<h3 class="title">' + item.OC_Name + '</h3>'; //注意引號的嵌套
                pageItem += item.OC_Content;
                pageItem += '<img src="' + item.OC_Name + '">';
                pageItem += '</div>';
            $(pageItem).appendTo('body');//最后回填到頁面
        }
    } else {
        console.error('ERROR: ' + json.StatusMessage);// 如果出錯,要把報錯信息打到控制臺
    }
})

反正基本就是這樣吧,主要是你要先(用假數(shù)據(jù))寫好頁面,然后把要動態(tài)添加的部分放到j(luò)s里來做。

書的話,我推薦本清華社的《Web設(shè)計與前端開發(fā)秘籍:HTML CSS JavaScript jQuery 構(gòu)建網(wǎng)站》,不過這套書有個缺點,就是特喵的書里所有跳轉(zhuǎn)到XX頁的數(shù)字都有問題!??!(應(yīng)該是直接按原版直接抄上去的……)不過入門我覺得還算合適。視頻我不太推薦,因為我覺得國內(nèi)的視頻都水的厲害,講師語速慢點直接2倍速看都沒問題,而且大都半天說不到主題。網(wǎng)站可以去看MDN的,或者W3School的也還闊以吧。

2018年1月28日 03:24
編輯回答
糖果果
$.ajax({
                    type: "get",
                    url: "api/OperateCms/GetOperateCMSList",
                    dataType: "json",
                    success: function (data) {
                        // 這里就是你的json可視化內(nèi)容
                        // 再根據(jù)你的dom展示就可以了
                    }
                });
2018年3月23日 16:00