0

不确定这是否可行,但我在 DB 列中有一些 HTML,我想在 Razor 视图的 Table TD 单元格中显示这些 HTML。但是问题是我只想要前 300 个字符,后跟“...”

IE:

<h2>My Test</h2> 

<p>My Test description is very long</p>

因此,如果我出于此问题的目的返回前 25 个字符加上“...”,我会得到:

<h2>My Test</h2> 

<p>My Tes ...

由于无效的 HTML,这会扰乱包含页面

IE

<table>
  <tr>
    <td>

<h2>My Test</h2> 

<p>My Tes ...

   </td>
  </tr>
</table>

有办法解决这个问题吗?

目前我正在使用:

@Html.Raw(Model.myTestHtml)

显示测试 HTML。

也许我只能从 HTMl 中去掉文本,然后 .substring 这个。

谢谢赞赏。

4

1 回答 1

1

如果 html 不是动态的并且它始终遵循相同的模式,您可以:

Parse the html to xml content use LINQ2XML and find the node you want in there edit that text and replace the additional parts with (...) parse back to html render it

LINQ2XML is very reliable. I am not sure if you can find dependencies which does same work as it with same level of accuracy and performance. but if you do find it, then you would not need to parsing in the process(to xml and from xml)

于 2013-11-06T04:20:00.637 回答