Bootstaptable 动态colum

用于记性不好的自己市场翻阅
1.引入bootstrap文件
2.bootstraptable初始化
3.初始化按钮
4.初始化操作按钮的方法

@using Lead.Objects.Domain
@{
    ViewBag.Title = "角色列表";
    ViewBag.AddPath = "/Role/Add";
    ViewBag.AreaSizeH = "320px";
    ViewBag.AreaSizeL = "440px";
    Layout = "~/Views/Shared/_List.cshtml";
}

@section scripts{
<script>
    $(document).ready(function () {
        AddPageDialogMode = true;
    });
    function EditRole(RoleID) {
        var lIndex = layer.open({
            type: 2,
            title: "角色编辑",
            area: ["440px", "320px"],
            fix: false,
            maxmin: true,
            shadeClose: false,
            scrollbar: false,
            content: '@Url.Action("Add")?RoleID=' + RoleID,
        });
        if (screen() < 1) {
             //最大化
            layer.full(lIndex);
        }
    }

    function DeleteRole(RoleID) {
        layer.confirm('你确定要删除吗?',
           {
               time: 0 //不自动关闭
          , btn: ['确定', '取消']
          , yes: function (index) {
              $.ajax({
                  type: "POST",
                  url: "@Url.Action("Delete")",
                  data: { "RoleID": RoleID },
                  success: function (data) {
                      if (data == "success") {
                          //删除指定页面记录
                          var index = $('table[name="bootTable"]').bootstrapTable('getData').length;
                          $('table[name="bootTable"]').bootstrapTable('remove', {
                              field: "Id",
                              values: [parseInt(RoleID)]
                          });
                      } else {
                          layer.alert("删除失败");
                      }
                  },
                  error: function () {
                      layer.alert("服务器正忙");
                  }
              });
              layer.close(index);
          }
           });
    }
    //Javasctipt
    $(function () {
        var $table = $('table[name="bootTable"]');
        var oTableInit = new Object();
        var columns = [{
            field: 'Id',
            title: 'Id',
            visible: false
        }, {
            field: 'RoleName',
            title: '角色名称',
            events: operateEvents,
            formatter: 'editFormatter'
        }, {
            field: 'Comment',
            title: '备注',
        }, {
            field: 'operate',
            title: '操作',
            align: 'center',
            events: operateEvents,
            formatter: 'operateFormatter'
        }];

        var bootTable = $table.bootstrapTable({
            url: '@Url.Action("GetList")',
            method: 'post',
            bFilter: true,
            search: false,
            cache: false,
            pagination: true,
            queryparamsType: '',
            queryParams: function (params) {
                return {
                    Pagesize: params.limit,
                    PageIndex: params.offset / params.limit + 1,
                    Keyword: $('#txtQueryArgs').val()
                }
            },//传递参数(*)
            sidePagination: "server",           //分页方式:client客户端分页,server服务端分页(*)
            pageNumber: 1,                       //初始化加载第一页,默认第一页
            pageSize: 10,                       //每页的记录行数(*)
            pageList: [10, 100, 1000, 2000, 5000],
            smartDisplay: false,
            showColumns: false,                  //是否显示所有的列
            showRefresh: false,                  //是否显示刷新按钮
            clickToSelect: true,                //是否启用点击选中行
            uniqueId: "Id",                     //每一行的唯一标识,一般为主键列
            showToggle: false,          //是否显示详细视图和列表视图的切换按钮
            smartDisplay: false,
            cardView: false,                    //是否显示详细视图
            exportDataType: "basic",              //basic', 'all', 'selected'.
            idField: 'Id',
            columns: columns,  //动态colum
        });
        //搜索框位置样式改变
        $(".search").removeClass("float-right").addClass("float-left");
    })
    //格式化按钮
    function editFormatter(value, row, index) {
        return [
    '<a  class="RoleOfedit" href="#">' + row.RoleName + '</a>',
        ]
    }
    function operateFormatter(value, row, index) {
        return [
    '<a  class="RoleOfedit" href="#"><i class="fa fa-pencil-square-o" ></i>修改</a>',
    '<a  class="RoleOfdelete" href="#"><i class="fa fa-trash-o" ></i>删除</a>',
        ].join(' | ');
    }
    //初始化操作按钮的方法
    window.operateEvents = {
        'click .RoleOfedit': function (e, value, row, index) {
            EditRole(row.Id);
        }, 'click .RoleOfdelete': function (e, value, row, index) {
            DeleteRole(row.Id);
        }
    };

</script>
}
<div class="card-body table-responsive">
    <table id="RoleList" class="table table-hover table-condensed text-nowrap" name="bootTable"></table>
</div>

注意点:后台获取的数据要与colum中的名称一样

  public JsonResult GetList(QueryArgs args)
        {
            var pageData = RoleProvider.Instance.GetList<Role>(args, true);
            //sencond proccess
            pageData.rows = (pageData.rows as List<Role>).Select(p => new
            {
                Id = p.Id,
                RoleName = p.Rolename,
                Comment = p.Comment
            }).ToList();
            return Json(pageData);
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值