最近开始学习MVC,遇到一个问题,就是前台UI需要根据后台传过来的MODEL的不同状态进行调整。
例如,我写了日记本程式,页面上就是一个日历,如果是当天,背景就改变颜色。如以出现了以下的代码:
<%
if (当前日期是当天)
{
%>
    <td style="vertical-align: top; width: 14%; height: 60px; background-color: #faf3d3">
<%}
else
{ %>
    <td style="vertical-align: top; width: 14%; height: 60px;">
<%} %>这样做是可以达到效果,但是代码会非常古怪,不方便维护。
敢问各位大侠,比较专业、成熟的做法应该是怎样?谢谢。

解决方案 »

  1.   

    不古怪,是这样的,你也可以把你的这种情况归结于数据结果没有准备充分
    建议你可以传递这样的数据,IList<public class DataModel>
    {
       public int day {get;set}
       public string dayclass {get;set} 
    }然后你就避免了你的情况,你说是吗?
      

  2.   

    可以先把class定义好,传日期的时候连同样式名一块传过来!
      

  3.   

    写一个JS方法,参数是当前日期和this,在方法里判断日期后,根据要求给this赋值class
    class是之前定义好了的
      

  4.   


    <style>
     .td1{vertical-align: top; width: 14%; height: 60px; background-color: #faf3d3}
     .td2{vertical-align: top; width: 14%; height: 60px;}
    </style>
    <%
    string classStr=td2;
    if (当前日期是当天)
    {
    %>
       classStr="td1";
    <%}
    else

    %>
       classStr="td2";
    <%

    %>
    <td class="<%=classStr%>">