2012-04-02 48 views
0

我的网站有以下几点:定位代码生成的李内的DataList项目

<li class="tile lower-boxes icon_email" data-target-activation="click" data-target="news"> 
      <div> 
      <h2>News 1  
      </h2><h3>24</h3> 
      </div> 
     </li> 

      <li class="tile lower-boxes icon_email" data-target-activation="click" data-target="news"> 
      <div> 
      <h2>News 2</h2><h3>24</h3> 
      </div> 
     </li> 

      <li class="tile lower-boxes icon_email" data-target-activation="click" data-target="news"> 
      <div> 
      <h2>News 3</h2><h3>24</h3> 
      </div> 
     </li> 

      <li class="tile lower-boxes icon_email" style="width:23.6% !important" data-target-activation="click" data-target="news"> 
      <div> 
      <h2>News 4</h2><h3>24</h3> 
      </div> 
     </li> 

下面的代码将抓住最后的4个员额从我的博客。但问题是我如何获得数据输出值,以便它们显示在每个li的部分?

<form id="form1" runat="server"> 
    <div> 
<asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="http://www.website.co.uk/blog/syndication.axd" 
      XPath="rss/channel/item [position()<=10]"></asp:XmlDataSource> 

    </div> 
     <asp:DataList ID="DataList1" runat="server" DataSourceID="XmlDataSource1" BackColor="White" BorderColor="#404040" BorderStyle="none" GridLines="Vertical"> 
      <ItemTemplate> 
       <a href="<%#XPath("link")%>"> 
        <%#XPath("title")%><br /> 
       </a> 
      </ItemTemplate> 
      <AlternatingItemStyle BackColor="CadetBlue" /> 
      <ItemStyle BackColor="transparent" ForeColor="transparent" /> 
      <HeaderStyle BackColor="#804040" ForeColor="White" Font-Bold="true" /> 
     </asp:DataList> 
    </form> 

回答

2

为了得到纯HTML结构,ASP:中继器是最优选的。在中继器中放置在ItemTemplate中的内容将作为输出而不应用其他表或CSS。

以下使用中继器用于相同的目的。

<asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="http://www.website.co.uk/blog/syndication.axd" 
    XPath="rss/channel/item [position()<=10]"></asp:XmlDataSource> 
<asp:Repeater ID="rptNews" runat="server" DataSourceID="XmlDataSource1"> 
    <HeaderTemplate> 
     <ul> 
    </HeaderTemplate> 
    <ItemTemplate> 
     <li class="tile lower-boxes icon_email" data-target-activation="click" data-target="news"> 
      <div> 
       <h2> 
        <a href="<%#XPath("link")%>"> 
         <%#XPath("title")%><br /> 
        </a> 
       </h2> 
       <h3> 
        <%#XPath("description")%></h3> 
      </div> 
     </li> 
    </ItemTemplate> 
    <FooterTemplate> 
     </ul> 
    </FooterTemplate> 
    </asp:Repeater> 

希望这会帮助你。

0

下面的代码将抓住从我的博客的最后4个员额。但是 的问题是我如何获得dataalist输出值,以便在每个li的部分显示 ?

如果您想这样做,您需要从Datalist中输出<li>元素。

是这样的:

<asp:DataList ID="DataList1" runat="server" DataSourceID="XmlDataSource1" BackColor="White" BorderColor="#404040" BorderStyle="none" GridLines="Vertical"> 
      <ItemTemplate> 
       <li> <!-- added li--> 
        <a href="<%#XPath("link")%>"> 
         <%#XPath("title")%><br /> 
        </a> 
       </li> 
      </ItemTemplate> 
      <AlternatingItemStyle BackColor="CadetBlue" /> 
      <ItemStyle BackColor="transparent" ForeColor="transparent" /> 
      <HeaderStyle BackColor="#804040" ForeColor="White" Font-Bold="true" /> 
     </asp:DataList> 
+0

所以我可以从我的第一篇文章中创建LI块,包括标题标签? – 2012-04-03 06:32:27