我有下面的助手来显示内容。
@Html.Raw(Model.PageData.PageContent)
我想在这里过滤掉(删除)它可能具有的任何图像标签。我检查的所有方法都像 .substring()
等,它们需要特定的索引或字符串名称才能被删除/替换等。这对我来说不可行,因为图像标签可以有任何源属性等。有没有只有 Razor 的可能性?我无法修改限制的服务器端逻辑。
或者,我必须用 CSS/JavaScript 伪造它,但我最后保留了这些。
有什么想法吗?
最佳答案
这就是我使用正则表达式解决问题的方法。请建议是否有更好的替代方案,仅使用 Razor 而不使用服务器端代码,如 c# 等。
@using System.Text.RegularExpressions;
@{
var news = Model.PageData.PageContent;
news = Regex.Replace(news, @"<img\s[^>]*>(?:\s*?</img>)?", "", RegexOptions.IgnoreCase);
}
@Html.Raw(news)
关于javascript - RAZOR - 从包含 HTML 的变量中删除图像标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45342745/