ASP.NET+Layer+AJAX表格

使用ASP.NET引用layer表格时,一直提示code:'0’或者其他情况,只有两种原因:
1、返回的数据格式错误:
layer表格的返回数据要有3个参数,code、msg、data,且data必须json格式。同时ASP.NET的ajax请求接口编写在.ashx格式的一般处理文件。 context.Response.Write=return;以下是示例:

public void layerTable(HttpContext context)
        {
            SqlDataReader read = DbHelperSQL.ExecuteReader("select * from vwUserWithParentName");
            List<TreeData> list = null;
            list = new List<TreeData>();
            while (read.Read())
            {
                TreeData treeData = new TreeData();
                treeData.id = int.Parse(read["id"].ToString());
                treeData.title = read["Name"].ToString();
                treeData.ParentID = int.Parse(read["parentid"].ToString());
                treeData.PathName = read["path_name"].ToString();
                list.Add(treeData);
            }
            string jsonData = JsonConvert.SerializeObject(list);//这是asp.net把字符串Json格式化功能。
            context.Response.Write("{\"code\":0,\"msg\":\"\",\"count\":1000,\"data\":" + jsonData + "}");//拼接layer表格需要的json格式
        }

2、第二个原因是返回的数据格式正确,而前台接收的字段名字错误;例如上面返回的字段分别是
id,title ,ParentID ,PathName 。所以前台filed绑定接收也应该只有这几个字段,代码如下:

<table class="layui-table" lay-data="{width: 892, height:330, url:'/Admin/GetData.ashx?action=layerTable', page:true, id:'idTest'}" lay-filter="demo">
  <thead>
    <tr>
      <th lay-data="{type:'checkbox', fixed: 'left'}"></th>
      <th lay-data="{field:'id', width:80, sort: true, fixed: true}">ID</th>
      <th lay-data="{field:'title ', width:80}">标题</th>
      <th lay-data="{field:'ParentID ', width:80, sort: true}">父级ID</th>
      <th lay-data="{field:'PathName ', width:80}">路径</th>
    </tr>
  </thead>
</table>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值