如何在ASP.NET MVC 3 WebGrid列名(标题)中添加HTML

3

我无法在WebGrid列名(标题)中添加HTML代码?当我在列名中添加HTML代码时,WebGrid会对其进行编码。这是否意味着无法在WebGrid列名中添加HTML代码?

2个回答

12

有一种方法可以更改MVC Helper生成的HTML,但它不太方便。 通常情况下,你可以编写以下命令:

@( new HtmlString( Component.HelperMethod().ToHtmlString().Replace("[replacetag]", "My Content")) )

以下是使用网格组件的示例:

<div id="grid">
    @(new HtmlString(
        grid.GetHtml(
        tableStyle: "grid",
        headerStyle: "header",
        rowStyle: "row",
        footerStyle: "footer",
        alternatingRowStyle: "altRow",
        columns: grid.Columns(
                     grid.Column("Name", "[replacethis]"),
                     grid.Column("Surname", "Surname"),
                     grid.Column("Email", "Sender Email"),
                     grid.Column("Id", "", format: (item) => item.GetSelectLink("Select"), canSort: false))
).ToHtmlString().Replace("[replacethis]", "<b>Name</b>")
)
)    
</div>

@Max 是的!!我已经试了好几天了(咳咳..几周)。谢谢 :-) - Peter
非常好的解决方案,谢谢。我差点找了一个小时的解决方案。 - mostafakvd

0

我认为在WebGrid的头部直接编写HTML的方法是不存在的。一个可能的解决方法是使用客户端JavaScript附加所需的HTML。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接