2011-12-28 61 views
1

我想通过解析一个XML文件与jQuery创建一个表。 XML文件看起来像这样...Jquery解析XML文件输出一个空白表

<?xml version='1.0' encoding='UTF-16'?> 
<E1TC NAME='R584211WXB' VERSION='a'> 
<TextLine1> 
    <1>2011/11/06</1> 
    <2>5748283</2> 
    <3>10.9300</3> 
    <4>4049027</4> 
    <5>7.7000</5> 
    <6>42799422</6> 
    <7>81.3800</7> 
    <8>52596733</8> 
</TextLine1> 
<TextLine1> 
... 
</TextLine1> 
</E1TC> 

我jQuery的功能看起来像这样

 // Build an HTML string 
     myHTMLOutput = ''; 
     myHTMLOutput += '<table width="98%" border="1" cellpadding="0" cellspacing="0">'; 
     myHTMLOutput += '<th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th><th>7</th><th>8</th>'; 

     // Run the function for each TextLine1 tag in the XML file 
     $('TextLine1',xml).each(function(i) 
     { 
      d1 = $(this).find("1").text(); 
      d2 = $(this).find("2").text(); 
      d3 = $(this).find("3").text(); 
      d4 = $(this).find("4").text(); 
      d5 = $(this).find("5").text(); 
      d6 = $(this).find("6").text(); 
      d7 = $(this).find("7").text(); 
      d8 = $(this).find("8").text(); 
      d1Post = $(this).find("1").attr("post"); 

      // Build row HTML data and store in string 
      mydata = BuildStudentHTML(d1,d2,d3,d4,d5,d6,d7,d8,d1Post); 
      myHTMLOutput = myHTMLOutput + mydata; 
     }); 
     myHTMLOutput += '</table>'; 

输出端产生一个空白的表头1,2,3,...,8。我找不到我的错误。我知道这个代码有效,因为它是来自http://www.compoc.com/tuts/的一个例子。当我修改它来处理我的XML文档时,一些东西破裂了。它看起来像是有什么错在线

$('TextLine1',xml).each(function(i) 

有关如何解决它的任何想法?这是我第一次使用jQuery ...

+0

如果我坚持**警告(“此代码运行”); **行后 ** $('TextLine1',xml).each(function(i){**我将不会收到输出,但如果我坚持它在那行之前,我会看到输出。 – whittin36 2011-12-28 22:06:17

回答

1

看起来你的XML是无效的。问题似乎是你用数字命名标签。如果我改变你的XML看起来像下面然后正常工作:

<?xml version='1.0' encoding='UTF-16'?> 
<E1TC NAME='R584211WXB' VERSION='a'> 
<TextLine1> 
    <a>2011/11/06</a> 
    <b>5748283</b> 
    <c>10.9300</c> 
    <d>4049027</d> 
    <e>7.7000</e> 
    <f>42799422</f> 
    <g>81.3800</g> 
    <h>52596733</h> 
</TextLine1> 
</E1TC> 

我用这个网站来验证XML:http://xmlgrid.net/

这里是上述XML的演示:http://jsfiddle.net/cHA4D/

+0

谢谢你的很好的资源和答案! – whittin36 2011-12-29 14:14:46