最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript實(shí)現(xiàn)將xml轉(zhuǎn)換成html table表格的方法

 更新時(shí)間:2015年04月17日 09:38:25   作者:dingding  
這篇文章主要介紹了JavaScript實(shí)現(xiàn)將xml轉(zhuǎn)換成html table表格的方法,實(shí)例分析了javascript操作XML文件與table表格的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了JavaScript實(shí)現(xiàn)將xml轉(zhuǎn)換成html table表格的方法。分享給大家供大家參考。具體如下:

function ConvertToTable(targetNode)
{
 // if the targetNode is xmlNode this line must be removed
 // i couldnt find a way to parse xml string to xml node
 // so i parse xml string to xml document
 targetNode = targetNode.childNodes[0];
 // first we need to create headers
 var columnCount = targetNode.childNodes[0].childNodes.length;
 var rowCount = targetNode.childNodes.length
 // name for the table
 var myTable = document.createElement("table");
 myTable.border = 1;
 myTable.borderColor ="green";
 var firstRow = myTable.insertRow();
 var firstCell = firstRow.insertCell();
 firstCell.colSpan = columnCount;
 firstCell.innerHTML = targetNode.nodeName;
 // name for the columns
 var secondRow = myTable.insertRow();
 for(var i=0;i<columnCount;i++)
 {
  var newCell = secondRow.insertCell();
  newCell.innerHTML = targetNode.childNodes[0].childNodes[i].nodeName;
 }
 // now fill the rows with data
 for(var i2=0;i2<rowCount;i2++)
 {
  var newRow = myTable.insertRow();
   for(var j=0;j<columnCount;j++)
   {
   var newCell = newRow.insertCell();
   newCell.innerHTML = targetNode.childNodes[i2].childNodes[j].firstChild.nodeValue;
   }
 }
 // i prefer to send it as string instead of a table object
 return myTable.outerHTML;
}

下面是一個(gè)簡(jiǎn)單的示例用法:

<!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>
 <title>Untitled Page</title>
</head>
<body>
<script type="text/javascript">
function ConvertToTable(targetNode)
{
 // if the targetNode is xmlNode this line must be removed
 // i couldnt find a way to parse xml string to xml node
 // so i parse xml string to xml document
 targetNode = targetNode.childNodes[0];
 // first we need to create headers
 var columnCount = targetNode.childNodes[0].childNodes.length;
 var rowCount = targetNode.childNodes.length
 // name for the table
 var myTable = document.createElement("table");
 myTable.border = 1;
 myTable.borderColor ="green";
 var firstRow = myTable.insertRow();
 var firstCell = firstRow.insertCell();
 firstCell.colSpan = columnCount;
 firstCell.innerHTML = targetNode.nodeName;
 // name for the columns
 var secondRow = myTable.insertRow();
 for(var i=0;i<columnCount;i++)
 {
  var newCell = secondRow.insertCell();
  newCell.innerHTML = targetNode.childNodes[0].childNodes[i].nodeName;
 }
 // now fill the rows with data
 for(var i2=0;i2<rowCount;i2++)
 {
  var newRow = myTable.insertRow();
   for(var j=0;j<columnCount;j++)
   {
   var newCell = newRow.insertCell();
   newCell.innerHTML = targetNode.childNodes[i2].childNodes[j].firstChild.nodeValue;
   }
 }
 // i prefer to send it as string instead of a table object
 return myTable.outerHTML;
}
function loadXmlDocFromString(text)
{
 try //Internet Explorer
  {
  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
  xmlDoc.async="false";
  xmlDoc.loadXML(text);
  return xmlDoc;
  } 
 catch(e)
  {
  try // Firefox, Mozilla, Opera, etc.
  {
  parser=new DOMParser();
  xmlDoc=parser.parseFromString(text,"text/xml");
  return xmlDoc;
  }
  catch(e)
  {
  alert(e.message);
  return;
  }
  }
}
var myXml = '<TableName> \
  <firstRow> \
  <field1>1</field1> \
  <field2>2</field2> \
  </firstRow> \
  <firstRow> \
  <field1>3</field1> \
  <field2>4</field2> \
  </firstRow> \
 </TableName>';
 var myDoc = loadXmlDocFromString(myXml);
document.write( ConvertToTable(myDoc));
</script>
</body>
</html>

希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • JavaScript中閉包的作用和應(yīng)用場(chǎng)景

    JavaScript中閉包的作用和應(yīng)用場(chǎng)景

    這篇文章將給大家詳細(xì)介紹JavaScript?中閉包是什么,有哪些應(yīng)用場(chǎng)景,文章通過(guò)代碼示例介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的參考價(jià)值,需要的朋友可以參考下
    2023-09-09
  • 基于Bootstrap+jQuery.validate實(shí)現(xiàn)表單驗(yàn)證

    基于Bootstrap+jQuery.validate實(shí)現(xiàn)表單驗(yàn)證

    這篇文章主要為大家詳細(xì)介紹了基于Bootstrap+jQuery.validate實(shí)現(xiàn)表單驗(yàn)證,感興趣的小伙伴們可以參考一下
    2016-05-05
  • Next.js使用getServerSideProps進(jìn)行服務(wù)器端渲染demo

    Next.js使用getServerSideProps進(jìn)行服務(wù)器端渲染demo

    這篇文章主要為大家介紹了Next.js使用getServerSideProps進(jìn)行服務(wù)器端渲染demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • js觸發(fā)select onchange事件的小技巧

    js觸發(fā)select onchange事件的小技巧

    select 或text的onchange事件需要手動(dòng)改變select或text的值才能觸發(fā),下面有個(gè)不錯(cuò)的方法可以通過(guò)js觸發(fā)select onchange事件
    2014-08-08
  • JS阻止用戶多次提交示例代碼

    JS阻止用戶多次提交示例代碼

    這篇文章主要介紹了JS如何阻止用戶多次提交,需要的朋友可以參考下
    2014-03-03
  • Lombok實(shí)現(xiàn)方式JSR-269

    Lombok實(shí)現(xiàn)方式JSR-269

    Lombok的出現(xiàn)幫助開發(fā)人員在開發(fā)工程中消除了大部分冗余代碼:繁瑣的get、set方法甚至建造者模式,今天通過(guò)本文給大家分享Lombok實(shí)現(xiàn)方式JSR-269的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2021-06-06
  • js全選按鈕的實(shí)現(xiàn)方法

    js全選按鈕的實(shí)現(xiàn)方法

    在我們進(jìn)行項(xiàng)目選擇時(shí),會(huì)出現(xiàn)選擇多個(gè)項(xiàng)目或者是項(xiàng)目實(shí)現(xiàn)全選,這樣的功能如何實(shí)現(xiàn)吶,本文給出了js實(shí)現(xiàn)checkbox全選的詳細(xì)代碼,希望大家喜歡。
    2015-11-11
  • 淺談JavaScript正則表達(dá)式分組匹配

    淺談JavaScript正則表達(dá)式分組匹配

    一個(gè)正則表達(dá)式要如何書寫才能同時(shí)匹配這兩個(gè)數(shù)字呢?簡(jiǎn)單的字符表達(dá)式當(dāng)然無(wú)法完成了,這個(gè)時(shí)候我們就可以定義一個(gè)字符集合(字符類)來(lái)進(jìn)行匹配。這就是分組匹配了
    2015-04-04
  • AjaxFileUpload.js實(shí)現(xiàn)異步上傳文件功能

    AjaxFileUpload.js實(shí)現(xiàn)異步上傳文件功能

    這篇文章主要為大家詳細(xì)介紹了AjaxFileUpload.js實(shí)現(xiàn)異步上傳文件功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • js實(shí)現(xiàn)屏幕自適應(yīng)局部代碼分享

    js實(shí)現(xiàn)屏幕自適應(yīng)局部代碼分享

    這篇文章主要介紹了js實(shí)現(xiàn)屏幕自適應(yīng)局部代碼分享,需要的朋友可以參考下
    2015-01-01

最新評(píng)論

红原县| 宜川县| 且末县| 云霄县| 株洲市| 渝北区| 项城市| 密山市| 乌海市| 都江堰市| 察雅县| 怀宁县| 新乡市| 彰化市| 麻江县| 静海县| 加查县| 广西| 舞阳县| 安达市| 若羌县| 泰安市| 山阳县| 开化县| 津南区| 同德县| 丁青县| 大竹县| 金塔县| 宣威市| 常熟市| 嘉鱼县| 休宁县| 宜都市| 洞口县| 临朐县| 曲沃县| 长葛市| 龙南县| 襄汾县| 许昌市|