【问题标题】:Kendo Grid Row Colors based on value of column基于列值的剑道网格行颜色
【发布时间】:2014-10-20 09:54:03
【问题描述】:

好的,所以我这里需要做的是根据行的列的值显示不同颜色的网格行。这是我当前的网格代码:

 @(Html.Kendo().Grid<iPlan.Syspro.Beekman.Portal.Agents.Models.SalesOrderViewModel>()
.Name("Inbox")
.HtmlAttributes(new { style = "height:80vh; width:80vw;" })
.Columns(columns =>
{
    columns.Bound(c => c.SalesOrder).Width(60);
    columns.Bound(c => c.Status).Width(60);
    columns.Bound(c => c.Date).Width(60);
    columns.Bound(c => c.DaysOutstanding).Width(80);
    //columns.Bound(c => c.Available).Width(60);
    columns.Template(@<text></text>).Width(60).ClientTemplate("<a class='k-button k-button-icontext k-grid-edit' href='/Inbox/SalesOrderDetail?SalesOrder=#=SalesOrder#'><span class='k-icon k-edit'></span>View</a>").Title("Detail");       
    columns.Template(@<text></text>).Width(60).ClientTemplate("<a class='k-button k-button-icontext k-grid-edit' href='/Inbox/GetDeliveryNote?SalesOrder=#=SalesOrder#'><span class='k-icon k-edit'></span>View</a>").Title("Delivery Note");
    columns.Template(@<text></text>).Width(60).ClientTemplate("<a class='k-button k-button-icontext k-grid-edit' href='/Inbox/GetDealerOrder?SalesOrder=#=SalesOrder#'><span class='k-icon k-edit'></span>View</a>").Title("Dealer order");
    columns.Template(@<text></text>).Width(60).ClientTemplate("<a class='k-button k-button-icontext k-grid-edit' href='/Inbox/GetFitmentFee?SalesOrder=#=SalesOrder#'><span class='k-icon k-edit'></span>View</a>").Title("Fitment invoice");    

})
.Selectable()
.Scrollable()
.Sortable()
.Groupable()
.Filterable()
.Pageable(pageable => pageable
    .Refresh(true)
    .PageSizes(true)
    .ButtonCount(5))
.DataSource(dataSource => dataSource
    .Ajax()
    .Read(read => read.Action("SalesOrders_Read", "Inbox"))        
    )        
  )

有人已经这样做了吗?我对剑道比较陌生,我不知道如何做到这一点。如果有人能告诉我如何做到这一点或分享一个类似的链接,那就太好了。谢谢

【问题讨论】:

    标签: javascript css kendo-grid kendo-asp.net-mvc


    【解决方案1】:

    我已经得到了你正在寻找的东西。刚刚测试过,一切正常。

    @(Html.Kendo().Grid(Model)
            .Name("GridLogIn")
            .Events(e => e.DataBound("LineItems_Databound"))
            .Columns(columns =>
        {
            columns.Bound(p => p.SomeValueRow).Title("Użytkownik").Width(139).HtmlAttributes(new { style = "text-align:center" }).HeaderHtmlAttributes(new { style = "text-align:center" });
    
        })
        .DataSource(dataSource => dataSource
            .Ajax()
            .PageSize(100)
            .ServerOperation(true)
            .Read(read => read.Action("AjaxBinding", "TableLogIn"))
         )
    )
    
    <script>
    
        function LineItems_Databound() {
    
            var grid = $("#GridLogIn").data("kendoGrid");
            var data = grid.dataSource.data();
    
            $.each(data, function (i, row) {
                var status = row.SomeValueRow;
    
                if (status == 0) {
                    $('tr[data-uid="' + row.uid + '"] ').css("background-color", "#99cc99"); //green
                }
                else
                {
                    $('tr[data-uid="' + row.uid + '"] ').css("background-color", "#ffffb2");  //yellow
                }
    
    
            });
        }
    
    </script>
    

    如果您有任何问题或疑问,请写信。

    干杯!

    【讨论】:

    • 谢谢,这工作正常,但是当网格可编辑时,如果用户取消编辑,行颜色将重置为默认值。你知道如何解决这个问题吗?
    猜你喜欢
    • 1970-01-01
    • 2016-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多