Asp.net mvc 3 ASP.NET MVC 3 WebGrid-条件列格式
在ASP.NET MVC 3中,是否仍然可以使用Webgrid进行条件格式设置 我知道我可以说: ...Asp.net mvc 3 ASP.NET MVC 3 WebGrid-条件列格式,asp.net-mvc-3,Asp.net Mvc 3,在ASP.NET MVC 3中,是否仍然可以使用Webgrid进行条件格式设置 我知道我可以说: ... grid.Column(“属性名称”、“标题名称”、样式:“粗体”) 它将为TD呈现HTML,并显示:class=“bold” 我想要的是,以一种样式呈现一些TDs,以另一种样式呈现其他TDs。比如: ... grid.Column(“属性名称”、“标题名称”、样式:(item)=>(item.Property>100)?“粗体”:“普通”) 但这会导致错误“最佳重载方法匹配…具有一些无效参
grid.Column(“属性名称”、“标题名称”、样式:“粗体”)
它将为TD呈现HTML,并显示:class=“bold”
我想要的是,以一种样式呈现一些TDs,以另一种样式呈现其他TDs。比如:
... grid.Column(“属性名称”、“标题名称”、样式:(item)=>(item.Property>100)?“粗体”:“普通”)
但这会导致错误“最佳重载方法匹配…具有一些无效参数。”
你知道这是否可行吗
谢谢
.Jim Biddison您可以通过一些JQuery来实现这一点:
<script type='text/javascript'>
$(document).ready(function () {
jQuery.each($('tbody tr td'), function () {
if (this.textContent == "some value") {
$(this).addClass("some class");
}
});
});
</script>
$(文档).ready(函数(){
每个($('tbody tr td'),函数(){
if(this.textContent==“some value”){
$(this.addClass(“某些类”);
}
});
});
当然,您必须修改每个循环中的逻辑
希望这能有所帮助。我知道我的答案有点晚了,但是如果有人还在为WebGrid寻找那种条件格式/列值绑定,这里有一些有用的方法:
@grid.GetHtml(
columns: grid.Columns(
grid.Column(format: (item) => (item.someproperty !=null) ?
Html.Raw("I've got value") :
Html.Raw("I don't :("))
)
)
我认为style属性不接受函数。您可以使用jQuery,也可以使用以下方法:
对于谷歌,Torm答案的改进版:
@grid.GetHtml(
columns: new[]
{
grid.Column(format:item => Html.Raw("<span" + (item.Property > 100 ? " style='bold'" : "") + ">" + item.Property + "</span>")),
}
)
@grid.GetHtml(
列:新[]
{
grid.Column(格式:item=>Html.Raw(“+item.Property+”),
}
)
这是条件文本,但不是条件格式/样式。我想他是想改变风格