Este artigo descreve como o JS lê dados de arquivo XML e exibe dados no formulário da tabela. Compartilhe -o para sua referência, como segue:
Vejamos o arquivo XML primeiro:
<?xml version="1.0" standalone="yes"?><student> <stuinfo> <stuName>Zhang Qiuli</stuName> <stuSex>Female</stuSex> <stuAge>18</stuAge> </stuinfo> <stuinfo> <stuName>Li Wencai</stuName> <stuSex>Male</stuSex> </stusex> 31 </stuage> </stuinfo> <stuinfo> <luname> li siwen </luname> <stusex> masculino </stusex> <stusex> 22 </stuage> </stuinfo> <tuinfo> <use> </stuage> </stuse> feminino feminino </stuinfo> <stuinfo> <stuName>Sun Honglei</stuName> <stuSex>Male</stuSex> <stuAge>32</stuAge> </stuinfo> <stuinfo> <stuName>Ouyang Junxiong</stuName> <stuSex>Male</stuSex> <stuSex>28</stuAge> </stuinfo> <stuinfo> <stuName>Jiang Lin</stuName> <stuSex>Female</stuSex> <stuSex>Female</stuSex> <stuSex>23</stuAge> </stuinfo> <stuinfo> <stuName>Xiaoxiao</stuName> <stuSex>Female</stuSex> <stuSex>Female</stuSex> <Stuage> 22 </Stuage> </stuinfo> </cudent>
Código da página ASPX:
< %@ Página de página = "c#" autoeventwireup = "true" codeBehind = "Obtenha dados do banco de dados para gerar xml.aspx.cs" herits = "Capítulo1.Geta dados do banco de dados para gerar xml" %> <! "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"><html xmlns =" http://www.w3.org/1999/xhtml "> <head runat =" servidor ">" loadxmldoc (dname) {if (window.xmlhttprequest) {xhttp = new xmlHttPrequest (); } else {xhttp = new ActiveXObject ("Microsoft.xmlHttp"); } xhttp.open ("get", dname, false); xhttp.send (""); retornar xhttp.Responsexml; } função readxml () {var xmldoc = loadxmldoc ("Student.xml"); // Obtenha o nó especificado var divmsg = document.getElementById ("xmlmsg"); var msg = "<tabela border = '1' id = 'myTable'> <tr> <th> nome </th> <th> gênero </th> <th> idade </th> <tr>"; var lindes = xmldoc.getElementsByTagName ("stuinfo"); for (var i = 0; i <modes.length; i ++) {msg+= "<tr>"; msg + = "<td>" + nós [i] .getElementsByTagName ("atordoamento") [0] .firstchild.nodEvalue + "</td>"; msg + = "<td>" + nós [i] .getElementsByTagName ("Stusex") [0] .FirstChild.NodEvalue + "</td>"; msg + = "<td>" + nós [i] .getElementsByTagName ("stuage") [0] .firstchild.nodEvalue + "</td>"; msg += "</tr>"; } msg += "</table>"; divmsg.innerhtml = msg; } </script></head><body> <form id="form1" runat="server"> <div> <input type="button" value="JS read XML" onclick="ReadXml()" /><br /> <div id="xmlMsg"> </div> </div> </form></body></html>A operação JS acima evita principalmente o uso de ChildNodes (porque as crianças [0] às vezes aparecem no Firefox e obtêm "/n" em vez do primeiro filho que queremos. Você pode tentar isso sozinho, mas eu encontrei essa situação de qualquer maneira), tornando -o compatível com o IE e o Firefox. Não experimentei outros navegadores.
For more information about JavaScript, please check this site's special topics: "Summary of JavaScript's XML File Operation Skills", "Summary of Ajax Operation Skills in JavaScript", "Summary of JSON Operation Skills in JavaScript", "Summary of JavaScript switching effects and techniques", "Summary of JavaScript search algorithm techniques", "Summary of JavaScript animation effects and Técnicas "," Resumo dos erros de JavaScript e técnicas de depuração "," Resumo das estruturas de dados de JavaScript e técnicas de algoritmo "," Resumo dos algoritmos e técnicas de travessia de JavaScript "e" uso de operações matemáticas de JavaScript ""
Espero que este artigo seja útil para a programação JavaScript de todos.