当前位置:编程学习 > JS >>

DOM操作XML文档向表格添加数据

DOM操作XML文档动态适时添加数据,本实例是向表格中添加数据,按照表格指定的格式添加,仅供参考。
答案:<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<title>DOM操作XML文档</title> 
<script language="javascript"> 
function loadXML()
{ 
       var url = "MyXml.xml"; 
       if(document.implementation&&document.implementation.createDocument)
       { 
              var xmldoc = document.implementation.createDocument("", "", null); 
              xmldoc.onload =   makeTable(xmldoc, url); 
              xmldoc.load(url); 
       } 
       else if(window.ActiveXObject)
       { 
             var xmldoc = new ActiveXObject("Microsoft.XMLDOM"); 
              xmldoc.onreadystatechange = function() { 
                     if(xmldoc.readyState == 4) 
                     {
                         makeTable(xmldoc, url);
                     }
              } 
              xmldoc.load(url); 
       } 
} 

function makeTable(xmldoc, url)
{ 
       var table = document.createElement("table"); 
       table.setAttribute("border","1"); 
       table.setAttribute("width","600"); 
       table.setAttribute("style","border:solid 1px #000000;"); 
	   table.setAttribute("id","table1");
       document.body.appendChild(table); 
       var caption = "会员信息数据来自XML文件: " + url; 
       table.createCaption().appendChild(document.createTextNode(caption)); 
       var header = table.createTHead(); 
       var headerrow = header.insertRow(0); 
       headerrow.insertCell(0).appendChild(document.createTextNode("姓名")); 
       headerrow.insertCell(1).appendChild(document.createTextNode("职业")); 
       headerrow.insertCell(2).appendChild(document.createTextNode("工资")); 
       var employees = xmldoc.getElementsByTagName("employee"); 
       for(var i=0;i<employees.length;i++)
       { 
             var e = employees[i]; 
              var name = e.getAttribute("name"); 
              var job = e.getElementsByTagName("job")[0].firstChild.data; 
              var salary = e.getElementsByTagName("salary")[0].firstChild.data; 
              var row = table.insertRow(i+1); 
              row.insertCell(0).appendChild(document.createTextNode(name)); 
              row.insertCell(1).appendChild(document.createTextNode(job)); 
              row.insertCell(2).appendChild(document.createTextNode(salary)); 
       } 
} 
//添加信息
function addRow()
{ 
          var name = document.getElementById("name").value;
          var job = document.getElementById("job").value;
          var salary = document.getElementById("salary").value;
          if((name == "" ) || (job == "") || (salary == ""))
          {
                alert("信息输入不完整,请重新输入!");
                document.getElementById("name").focus();
                return;
          }
	      var table=document.getElementById("table1");
          var row = table.insertRow(1); 
          row.insertCell(0).appendChild(document.createTextNode(name)); 
          row.insertCell(1).appendChild(document.createTextNode(job)); 
          row.insertCell(2).appendChild(document.createTextNode(salary)); 
} 

</script> 
</head> 

<body onLoad="loadXML()"> 

<table style="width:600px; background-color:#99ccff;">
<tbody>
      <tr>
          <td align="center" colspan="4"><b>会员信息管理</b></td>
      </tr>
      <tr>
            <td height="20">增加会员</td>
            <td height="20">
                 姓名:<input id="name" type="text" size="10">
            </td>
            <td height="20">
                 职业:<input id="job" type="text" size="10">
            </td> 
             <td height="20">
                 工资:<input id="salary" type="text" size="10">
            </td>                       
            <td height="20">
                  <input type="button" id="submit1" value="添加" onclick="addRow()"  />
            </td> 
      </tr>
</tbody>
</table>
</body>
</html> 

上一个:仿Discuz文本框弹出层的效果
下一个:JavaScript 动态删除/添加HTML表单元素

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,