国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

javascript讀取xml實(shí)現(xiàn)javascript分頁

2019-11-20 21:28:28
字體:
供稿:網(wǎng)友

復(fù)制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>讀取Xml并分頁</title>

</head>

<body >
   <div id="gao">

   </div>
    <div>
       <table align="center">
          <tr>
             <td><input type="button" name="prev" id="prev" value="上一頁"  onclick="showPage('false')"><input type="button" id="next" name="next" value="下一頁" onclick="showPage('true')"> </td>
          </tr>
       </table>
    </div>
<script type="text/javascript">
     function LoadXML(url)
  {
  var xmlDoc;
  if(window.ActiveXObject)
  {
     xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
     xmlDoc.async="false";
     xmlDoc.load(url);     

  }else if(document.implementation&&document.implementation.createDocument)
  {
              xmlDoc=document.implementation.createDocument("","",null);
     xmlDoc.async=false;
     xmlDoc.load(url);
  }else
  {
     alert("You browser cannot handle this script!");
  }
  return xmlDoc;
  }


  var xmlDoc=LoadXML("student.xml");
  var students=xmlDoc.getElementsByTagName("student");
  var stuLength=students.length;
  var currentPage=0;
  var pageSize=2;
  var maxPage=Math.ceil(stuLength/pageSize);

  function showPage(page)
  {
  var mytable=document.getElementsByTagName("table")[1];
  if(mytable) document.body.removeChild(mytable);
  var table=document.createElement("table");
  table.setAttribute("id","mytable");
  table.setAttribute("width","600");
  table.setAttribute("border","1");
     document.body.appendChild(table);

  var header=table.createTHead();
  var headerrow=header.insertRow(0);
     headerrow.insertCell(0).appendChild(document.createTextNode("姓名"));
  headerrow.insertCell(1).appendChild(document.createTextNode("學(xué)校"));
  headerrow.insertCell(2).appendChild(document.createTextNode("成績"))
       if(page=="true")
    currentPage++;
    else
      currentPage--;
    if(currentPage>=maxPage) currentPage=maxPage;
    else if(currentPage<=0) currentPage=1;
    var start=(currentPage-1)*pageSize;
    var end=currentPage*pageSize-1;

    for(var i=start;i<=end;i++)
    {
             var e=students[i];
    var name=e.getAttribute("name");
    var school=e.getElementsByTagName("school")[0].firstChild.data;
    var grade=e.getElementsByTagName("grade")[0].firstChild.data;
    var row=table.insertRow(i%pageSize+1);
    row.insertCell(0).appendChild(document.createTextNode(name));
    row.insertCell(1).appendChild(document.createTextNode(school));
    row.insertCell(2).appendChild(document.createTextNode(school));
    }

   
  }

  showPage("true");

</script>
</body>
</html>


在編寫過程過,涉及到代碼的處理上,由于我最初,將javascript代碼放在了head標(biāo)簽里面,結(jié)果導(dǎo)致document.body對象為空!
我們都知道,javascript在執(zhí)行的時(shí)候,頁面會(huì)暫定加載而去執(zhí)行html代碼,所以當(dāng)js代碼放在head標(biāo)簽中的時(shí)候,html頁面還沒有執(zhí)行到body,故而產(chǎn)生了錯(cuò)誤!
后來將js代碼,放在了body的尾部,這樣,就能夠正確引用到body對象了!
同時(shí),在大型網(wǎng)站架構(gòu)中,也是提高頁面加載速度的一種方式!頁面首頁加載html標(biāo)簽內(nèi)容,到頁面最后,在執(zhí)行js代碼,能在很大程度上提升網(wǎng)頁打開速度,提升用戶體驗(yàn)!
另外的student.xml內(nèi)容是
復(fù)制代碼 代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<students>
   <student name="gaoxing">
       <school>西北大學(xué)1</school>
    <grade>76</grade>
   </student>
   <student name="gaoxing">
       <school>西北大學(xué)2</school>
    <grade>76</grade>
   </student>
   <student name="gaoxing">
       <school>西北大3學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北大學(xué)4</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北大5學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北大6學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北大7學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北8大學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北9大學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北10大學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北大學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北大學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北大學(xué)</school>
    <grade>76</grade>
   </student>
      <student name="gaoxing">
       <school>西北大學(xué)</school>
    <grade>76</grade>
   </student>
</students>

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 左云县| 罗甸县| 扬州市| 濮阳县| 永川市| 久治县| 龙泉市| 余庆县| 博罗县| 鱼台县| 斗六市| 浑源县| 百色市| 武宣县| 宝应县| 彰化县| 金坛市| 洛川县| 定远县| 马公市| 扶风县| 襄汾县| 偃师市| 青河县| 上饶县| 丰台区| 霍山县| 枝江市| 茌平县| 武城县| 文山县| 理塘县| 安远县| 游戏| 綦江县| 长治县| 手机| 区。| 宜兴市| 轮台县| 乐平市|