无法为kendo ui网格中的第一行设置样式

时间:2014-06-17 04:38:50

标签: jquery css kendo-ui kendo-asp.net-mvc

我想为kendo ui网格中的行设置样式。这是我的代码:

// grid

@(Html.Kendo().Grid<Model>()
          .Name("gridModel")
          .HtmlAttributes(new { @class = "table" })
          .DataSource(x => x.Ajax()
                      .Read("ReadData", "General")

          )      
          .Columns(c =>
          {
              c.Bound(i => i.ID);
              ...........


//脚本

$("#gridModel").find("tbody > tr").addClass('myStyle');

// css

.myStyle{
background-color: #005850;
}

然而,0,2,4,6 ......的行不能设置背景颜色作为我的愿望。我不知道发生了什么。请帮帮我!

3 个答案:

答案 0 :(得分:3)

尝试以下步骤:

  1. 将事件.Events(e =&gt; e.DataBound(“changeBackgroundColor”))添加到您的网格中

  2. 添加javascript以处理DataBound事件

    onDisableCheckControl: function () { var grid = $("Your Grid ID").data("kendoGrid"); var data = grid.dataSource.data(); $.each(data, function (i, row) { if (row.YourCheckAttribute != null) { var element = $('tr[data-uid="' + row.uid + '"] '); $(element).addCss("change-background")
    } }); } };

  3. 添加CSS以更改背景颜色 yourgridId td {   背景颜色:黑色 }

  4. 希望它有所帮助!

答案 1 :(得分:2)

如果您的jquery工作正常,即将"myStyle"类添加到第一个<tr> (这可以通过检查元素检查),然后检查您的第一个<tr>'s <td>标记当然,他们有一些适用于它们的类或样式,它们会覆盖".myStyle"属性

答案 2 :(得分:2)

改变第一个tr的颜色 只需使用tbody tr:first

<script>
$(document).ready(function() {  
$("#gridModel").find("tbody > tr").addClass('myStyle');  
$("#gridModel").find("tbody tr:first").addClass('desirecolor'); 

})  


 </script>

http://jsfiddle.net/8M7Cw/