Telerik-Gird

 

1.后台请求方法,需要注意的几点:

  1.[GridAction(EnableCustomBinding = true)]    绑定数据必备
  2.int? page = 1, int? size = 10

  3.GridModel gm = new GridModel(){Data = list, Total = total };  分页必备

 

    [GridAction(EnableCustomBinding = true)]
        public ActionResult AdviceReportData(string orgID, string business,int? page = 1, int? size = 10)
        {
            int total = 0;
            Pagination pages = new Pagination()
            {
                OrderBy = "id desc",
                PageIndex = (int)page,
                PageSize = (int)size
            };
            IList<BusinessAdviceDTO> list = businessAdviceService.GetBusinessAdviceByUserID(UserID, pages, out total, orgID, business,0);
            GridModel gm = new GridModel()
            {
                Data = list,
                Total = total
            };
            return View(gm);
        }

 

2.JS文件


//主界面根据流程角色名称查询
$('#searchBtn').click(function () {
      conditonStr = "orgID=" + $('#DeptName').val();
      conditonStr += "&business=" + encodeURI( $("#business").val());
      $("#AdviceReportGrid").data("tGrid").ajax.selectUrl = "/zh-cn/BusinessAdvice/AdviceReportData?" + conditonStr;
      $("#AdviceReportGrid").data("tGrid").rebind();
});



function onRowDataBound(e) {
if (e.dataItem) { if (e.dataItem.adviceStatus == "已保存") { var allLink = $(e.row).find('a#Detail' + e.dataItem.Id); allLink.eq(0).remove(); } else { var allLink = $(e.row).find('a#Edit' + e.dataItem.Id); allLink.eq(0).remove(); } } }

 

3.前台页面

  1.@model IEnumerable<BusinessAdviceDTO>   或者写成  IList<BusinessAdviceDTO> list = new List<BusinessAdviceDTO>();  list会自动赋值

  2..Format("{0:yyyy-MM-dd}"}

  3..ClientTemplate("<a id='Edit<#=Id#>' href='/BusinessAdvice/AdviceReportSubmit?id=<#=Id#>'>编辑</a>" )

@(Html.Telerik().Grid(list)
        .Name("AdviceReportGrid")
        .Columns(columns =>
        {
            columns.Bound(p => p.RN).HeaderTemplate("<div>序号</div>").HeaderHtmlAttributes(new { style = "text-align:center" }).Width(50);
            columns.Bound(p => p.businessChargeDeptName).HeaderTemplate("<div>业务主管部门</div>").HeaderHtmlAttributes(new { style = "text-align:center" }).Width(150);
            columns.Bound(p => p.handleResult).HeaderTemplate("<div>处理结果</div>").HeaderHtmlAttributes(new { style = "text-align:center" }).Width(50);
            columns.Bound(p => p.adviceCreationDate).HeaderTemplate("<div>提交日期</div>").HeaderHtmlAttributes(new { style = "text-align:center" })
            .Format("{0:yyyy-MM-dd}").Width(150);
            columns.Bound(p => p.Id)
                .ClientTemplate(
                "<a id='Edit<#=Id#>' href='/BusinessAdvice/AdviceReportSubmit?id=<#=Id#>'>编辑</a><a target='_black' id='Detail<#=Id#>' href='/BusinessAdvice/BusinessAdviceInf?strAdviceId=<#=Id#>'>详细</a>" )
                .Title("操作").HeaderHtmlAttributes(new { style = "text-align:center" }).Width(60);
        })
        .DataBinding(dataBinding =>
        {
            dataBinding.Ajax().Select("AdviceReportData", "BusinessAdvice");
        })
        .ClientEvents(events => events
            .OnRowDataBound("onRowDataBound")
        )
        .Scrollable(s=>s.Enabled(true))
        .Pageable(paging => paging.Enabled(true).PageSize(10).PageTo(1))
        .Footer(true)

 

posted on 2015-04-12 21:39  忙碌ing  阅读(243)  评论(0)    收藏  举报

导航