Mvc如何在控制器代码里面改变视图table里面的td的字体的颜色 根据条件查询出数据然后给这条数据绑定颜色 之前在网上找了个但是不行 只对一条数据有用。代码是:
后台代码:
你不是问过了吗:)
很多table中要求负数显示红色的,你的要求跟这个类似吧,那我举个例子,学生成绩不及格(60分以下红色)。
1、controller中不用做任何修改,就取数据。
2、view中(下面代码未测试,Model是一个list<score>对象,每个score里有student对象):
<table>
<tr>
<td>姓名</td>
<td>英语成绩</td>
<td>语文成绩</td>
</tr>
@foreach (var score in Model)
{
<tr>
<td>@score.Student.Name</td>
<td @if(score.EnglishScore<60){html.raw("style='color:red'");}>@score.EnglishScore</td>
<td @if(score.ChineseScore<60){html.raw("style='color:red'");}>@score.ChineseScore</td>
</tr>
}
我是aspx的我把@换成<%:if(item.Order.ToString().Equers(False){html.raw(style="color:Red";)})%>这样编译出错 是不是写错了?。。。
@罗罗づ: If语句前面没有冒号吧?!aspx里的写法我不是很熟悉。
而且你If中的条件判断很怪异啊,string类型比较怎么直接写False呢???,还有Raw是输出字符串,你连个引号都没有,大小写也不分,而且括号也有问题。你编译器应该有自动提示功能啊,难不成你用记事本写程序??!!
还是多看看书吧,别嫌我多嘴啊,你这个基本功差十万八千里了,就你这个东西绝对可以在学校当范例来用。
这个写法:<%if(Item.Order.ToString().Equals("False")){Html.Raw("style='color:Red'");}%>
@kylin.chen: 嗯嗯 基本功确实有点差。 谢谢哈。
@罗罗づ: 需求变了不用这么写了不过真的很谢谢kylin.chen老师通过这个我明白了自己的不足有很多东西需要学习。真的很谢谢。
用改变CSS的方法吧,如 .tdRed td{color:red;} .tdNoRed td{color:#000;}
ViewData["js"]="tdRed";
<table class=<%:ViewData["js"]%>>
我是根据条件来的这样就相当于直接个颜色吧 谢谢 我要根据后台查询条件然后再给他颜色的那种 还有办法么?