2010-02-25 44 views
1

感谢您在 search dataset from xml file 中给出的建议,以便像我之前的文章中那样使用Xpath代替数据集。我已经使用xpath成功地过滤了我的xml数据(请参阅上一篇文章),但现在我需要在表中显示数据。我该怎么做呢?我需要显示某些值。我如何选择我想要的节点并显示它们?如何在HTML表格中显示XML数据

Dim xdoc As New XPathDocument(xt) 
    Dim nav As XPathNavigator = xdoc.CreateNavigator() 

    Dim expr As XPathExpression = nav.Compile("pf:CONTRACTS/pf:CONTRACT[contains(pf:KEYWORDS,'" word "')]") 

    Dim tr As String = Nothing 
    Dim namespaceManager As XmlNamespaceManager = New XmlNamespaceManager(nav.NameTable) 
    namespaceManager.AddNamespace("pf", "http://namespace.co.uk/") 
    expr.SetContext(namespaceManager) 
    Dim nodes As XPathNodeIterator = nav.Select(expr) 

     While nodes.MoveNext() 
    'I would need to have "Contact ID", "Contract Name", etc.   
     tr += "<tr><td>" & nodes.Current.Value & "</td><td></td><td></td><td></td></tr>" 
    End While 
      Dim th As String = "<th>Commodity</th><th>Name</th><th>Supplier</th><th>Name</th>" 
    div1.InnerHtml = ("<table class='datatable1'>" & th) + tr & "</table>" 
+1

另外,您可能想重新考虑您的整个方法。在ASP.NET中通过字符串连接创建输出HTML在这么多级别上是错误的... – Tomalak 2010-02-25 18:17:34

+0

将xml解析为xdocument/xdocument,然后使用xslt进行转换 - 阅读xsl,我非常肯定您可以这样做。 – Haroon 2011-03-16 16:53:31

+0

最后使用了xslt吗? – 2011-05-23 05:08:25

回答

0

使用XSLT将XML转换为任何其他XML(包括HTML)。