首頁  >  文章  >  web前端  >  jquery如何從json讀取資料追加到html中

jquery如何從json讀取資料追加到html中

小云云
小云云原創
2017-12-07 15:43:272472瀏覽

jQuery是一套跨瀏覽器的JavaScript函式庫,簡化HTML與JavaScript之間的操作。實際應用中,當有中文字元時,當直接使用json_encode() 函數會使漢字編碼成"\u***"的形式,自從php5.4起已經解決這個問題,使用以下方法解決漢字被編碼的問題。本文我們主要為大家介紹了利用jquery如何從json讀取資料追加到html中的相關資料。

JSON 格式

#json 是Ajax 中使用頻率最高的資料格式,在瀏覽器和伺服器中之間的通訊可離不開它。

JSON 格式說明

需要特別注意的是,在 JSON 中的屬性名稱是需要使用引號引起來的。

1.下載安裝jquery

#可透過下面的方法引入線上版本的js:


<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>


參考安裝文件:http://www.jb51.net/zt/jquerydown.htm

#2.準備一個json格式的文件,後綴可以不是.json

#例如下面是result.json的格式


##

{
 "title":"【UI测试结果】-转转2017/1/23 14:47",
 "starttime":"2017/1/23 15:00 45",
 "endtime":"2017/1/23 15:01 42",
 "passcount":10,
 "failurecount":5,
 "resultinfo":[
 {
 "name":"发布",
 "moudle":"Publish",
 "pass":"true",
 "onecepass":"true",
 "log":"true"
 },
 {
 "name":"登录",
 "moudle":"Login",
 "pass":"false",
 "onecepass":"true",
 "log":"asserterrorlog",
 "failurereason":{
  "errorlog":"asserterror",
  "errorimg":"./登录.jpg"
  }
 }
 ]
}


3.透過$.getJSON取得Json檔案的資料

#例如下面的範例:讀取result.json檔案的內容,儲存到result變數中,結果是一個json格式



$.getJSON(&#39;./result.json&#39;,function(result){}


4.透過【$('#元素id').after(html內容);】將html內容加入到定位到的元素後面

元素定位方式



$("#id"):定位到id,
$(“p"):定位到标签p,其他标签同理
$(“.class”):定位到class


插入html內容位置:


  • append() - 在被選元素的結尾插入內容

  • #prepend() - 在被選元素的開頭插入內容

  • after() - 在被選元素之後插入內容

  • before() - 在被選元素之前插入內容

Json資料的運算

JSON物件[key]來讀取內容:result['title'],或用result.”title"


陣列的物件值,可以透過$.each來取得資料:


$.each(JSON陣列物件,function(遍歷索引i,遍歷物件){操作遍歷的物件})


讀result.json,追加html的程式碼如下


#(jquery需要寫在3f1c4e4b6b16bbbd69b2ee476dc4f83a標籤內)


#




 New Document 

<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
//使用getJSON方法读取json数据,
//注意:info.json可以是不同类型文件,只要其中的数据为json类型即可
 $.getJSON(&#39;./result.json&#39;,function(result){
 var html_title=&#39;&#39;;
 var html_resultinfo=&#39;&#39;;
 
 html_title += &#39;<b>&#39;+result["title"]+&#39;</b>&#39;;
 $(&#39;#resultitle&#39;).after(html_title);
 $.each(result["resultinfo"],function(i,item){
 if(item["pass"]=="true") {
 html_resultinfo += &#39;<tr><td>&#39; + item[&#39;name&#39;] + &#39;</td>&#39; +
 &#39;<td>&#39; + item[&#39;moudle&#39;] + &#39;</td>&#39; +
 &#39;<td>&#39; + item["pass"] + &#39;</td>&#39; +
 &#39;<td>&#39; + item[&#39;onecepass&#39;] + &#39;</td>&#39; +
 &#39;<td id="&#39; + item[&#39;moudle&#39;] + &#39;" class="collapsed" onclick="collapsedisplay(&#39; + item[&#39;moudle&#39;] + &#39;)"><u style="color: blue;">展开</u></td></tr>&#39;;
 html_resultinfo +=&#39;<tr id="&#39; + item[&#39;moudle&#39;] + &#39;info" class="collapsedinfo" style="display:none"><td colspan="5">&#39; + item[&#39;log&#39;] + &#39;</td></tr>&#39;;
 }
$(&#39;#infotitle&#39;).after(html_resultinfo);//after方法:在每个匹配的元素之后插入内容。
 });
});
 
</script>



用例名称 模块名称 是否成功 一次成功 详情

JQuery取得元素的方法總結

#jQuery載入一個html頁面到指定的p裡面

js讀取和解析JSON資料的方法#

以上是jquery如何從json讀取資料追加到html中的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn