2013-06-18 39 views
0

這裏是我的中繼器的代碼,JavaScript的HTML子在asp.net中繼

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="NewDataSource"> 
     <ItemTemplate> 
       <%# Eval("Title") %><br /> 
       <%# Eval("PostDate","{0:dd-MMM-yyyy}")%><br/> 
       <%# Eval("Body") %><br /> 
      <hr /> 
     </ItemTemplate> 
    </asp:Repeater> 

在我的數據,Body是HTML字符串,我想這substring不包括html標記!

如果體中的字符串是喜歡
<span style="color: #996600">Detail </span>of my Body <span style="color: #669933">Text </span>

我想告訴喜歡,

<span style="color: #996600">Detail </span>of my <span style="color: #669933"> </span>... ReadMore(to navigate detail Page)

我發現JavaScript函數來做到這一點在Substring text with html tags in javascript

但我不知道如何使用我的代碼!請幫助我,謝謝! :)

回答

0

你應該能夠做這樣的事......

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="NewDataSource"> 
    <ItemTemplate> 
      <%# Eval("Title") %><br /> 
      <%# Eval("PostDate","{0:dd-MMM-yyyy}")%><br/> 
      <%# Regex.Replace(Eval("Body").toString(), "<.*?>", "").Substring(0, 10) & " ..." %> 
      <a href="">Read More</a><br /> 
     <hr /> 
    </ItemTemplate> 
</asp:Repeater> 
+0

感謝盧克,但你的代碼將'substring'。我發現在鏈路的解決方案是指在我的問題,但我只是不知道如何與我的代碼使用一切,包括HTML標籤! – zey

+0

你在JS中發現了一個代碼,但是你現在用asp net C#或VB編寫。請參閱我的更新,在那裏你可以簡單地刪除所有的html標籤。 – Luke

+0

但我不希望刪除HTML標籤:) – zey

0

爲什麼子?

您可以使用CSS來控制的話,並設置標題全文在同一時間。

.ellipsis-body{ 
    white-space: nowrap; 
    overflow: hidden; 
    -o-text-overflow: ellipsis; 
    text-overflow: ellipsis; 
} 

希望能幫到你。

+0

您需要先設置一個寬度。 – Teddy