2009-10-22 7 views
2

XML 요소 안에 html 앵커를 삽입하는 방법은 무엇입니까? 다음 XML을 고려 XML 문서에 HTML 앵커를 포함하십시오.

<?xml version="1.0" encoding="utf-8"?> 
<Customers> 
    <Customer> 
      <FirstName>Joe</FirstName> 
      <LastName>Mama</LastName> 
      <Email><a href="mailto:[email protected]">[email protected]</a></Email> 
      <Website><a href="http://www.joemama.com">www.joemama.com</a></Website> 
    </Customer> 
</Customer> 

내가 요소의 내용을 표시

, 난 단지 텍스트, 아니 하이퍼 링크를 얻을. 여기

은 내가 asp.net 웹 폼 페이지에 XML 데이터 표시하기 위해 사용하고있는 코드입니다 :

CustomerView HTML을

<%@ control language="vb" autoeventwireup="false" codebehind="CustomerView.ascx.vb" 
    inherits="Sparta.Web.CustomerView" %> 
<div class="View"> 
    <table> 
     <tr> 
      <td>First Name:</td> 
      <td><asp:label id="FirstName" runat="server"></asp:label></td> 
     </tr> 
     <tr> 
      <td>Last Name:</td> 
      <td><asp:label id="LastName" runat="server"></asp:label></td> 
     </tr> 
     <tr> 
      <td>Email:</td> 
      <td><asp:literal id="Email" runat="server"></asp:literal></td> 
     </tr> 
     <tr> 
      <td>Website:</td> 
      <td><asp:literal id="Website" runat="server"></asp:literal></td> 
     </tr> 
    </table> 
</div> 

CustomerView Codebehind가

Public Partial Class CustomerView 
    Inherits System.Web.UI.UserControl 

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
      Me.DataBind() 
    End Sub 

    Private Sub DataBind() 

     Dim xmlDoc As System.Xml.Linq.XDocument = Nothing 
     xmlDoc = XDocument.Load(Server.MapPath("~/data/CustomerData.xml")) 

     Dim listQuery = _ 
     From list In xmlDoc.Descendants("Customer") _ 
     Where list.Element("LastName").Value = Request.QueryString("id") _ 
     Select _ 
     FirstName = list.Element("FirstName").Value, _ 
     LastName= list.Element("LastName").Value, _ 
     Email = list.Element("Email").Value, _ 
     Website = list.Element("Website").Value 

     Dim listInfo = listQuery(0) 
     If listInfo Is Nothing Then 
      Throw New ApplicationException("Missing CustomerData Element") 
     End If 

     Me.FirstName.Text = listInfo.FirstName 
     Me.LastName.Text = listInfo.LastName 
     Me.Email.Text = listInfo.Email 
     Me.Website.Text = listInfo.Website 

    End Sub 

End Class 

답변

2

XML은 XML이다 , HTML은 HTML입니다. XML을 HTML로 구문 분석하려는 경우 <Email>의 내용을 추출하십시오.이 내용은 <![CDATA[]]>으로 줄 바꿈하여 HTML로 추출하는 것이 좋습니다.

또한이 코드를 사용하여 표시하십시오.

2

다음 XML은 위의 예제에서 완벽하게 작동합니다.

<?xml version="1.0" encoding="utf-8"?> 
<Customers> 
    <Customer> 
      <FirstName>Joe</FirstName> 
      <LastName>Mama</LastName> 
      <Email><![CDATA[<a href="mailto:[email protected]">[email protected]</a>]]></Email> 
      <Website><![CDATA[<a href="http://www.joemama.com">www.joemama.com</a>]]></Website> 
    </Customer> 
</Customer> 
관련 문제