基本上我想问一下我正在使用MVC中的ECommerce应用程序,并且已经在数据库中以HTML格式存储了Product
的描述。现在,我要做的是在Product Detail
页面上显示该描述,使得描述应具有HTML中指定的正确格式,id
Description
的字符超出比显示“显示更多”和“显示更少”功能的500个字符。
这是我的代码
@if (Model.product.FullDescription.Count() > 500)
{
<p id="fdescription" class="description">
@Html.Raw(Model.product.FullDescription.Substring(0, 500))
<a id="showmore" onclick="showdescription(1)"
style="color:rgb(0,127,234);cursor:pointer">
Show More</a>
</p>
<p id="ffdescription" class="description">
@Html.Raw(Model.product.FullDescription)
<a id="showless" onclick="showdescription(2)"
style="color:rgb(0,127,234);cursor:pointer">Show Less</a>
</p>
}
else
{
<p id="fdescription" class="description">
@Html.Raw(Model.product.FullDescription)
</p>
}
但上面的问题是500个字符也计算html标签,而子字符串函数不能正确解析HTML标签,有些人指出结束标签未命中。
答案 0 :(得分:0)
一种方法是将描述解析为XElement并询问其值,该值返回没有标记的描述。仅当HTML有效时才有效。
XElement descElem = XElement.Parse(descriptionText); if(descElem.Value&lt; = 500) {//保存到数据库}