layui table动态表头

页面

<#--浏览查询右侧信息项表格展示界面-->
<#import "/gdsp/tags/castle.ftl" as c>
<@c.Script src="script/search/search"/>



JS

function initInfoItemTable(nodeCode){
	var attrListJson = '';
	var attrCols = [[
		{field:'infoItemId',type: 'checkbox', width:60,fixed: 'left'},
		{field:'map_flg',title: "映射状态",sort: true, fixed: 'left'},
		{field:'inst_cd',title:"信息项编号",width:115,sort: true, fixed: 'left',templet:'#infoItemInst_cdTpl'},
		{field:'inst_nm',title:"中文名称",width:115,sort: true, fixed: 'left'},
		{field:'stat_cont',title:"标准状态", sort: true}
	]]
	//获取动态表头
	$.ajax({
		type:"get",
		url: context + "/standardTree/standardTreeManage/getAtrrDataCols.d?clsCodeCls=InfoItem",
		dataType : "JSON",
		success:function(data){
			attrListJson = data;//不需要用$.parseJSON(data)转换格式,用了会报错
			initTable(attrListJson);//获取表头成功后初始化表格
		},
		error:function(){
			$F.messager.warn("获取列表表头信息失败");
		}
	});
	//初始化table
	function initTable(attrListJson){
		//动态拼接表头
		for (var i=0;i

controller

 //import net.sf.json.JSONArray
 @RequestMapping("/getAtrrDataCols.d")
    @ResponseBody
    @ViewWrapper(wrapped = false, onlyAjax = true)//不加这句clsCodeCls为空,原因未知
    public Object getAtrrDataCols(HttpServletRequest req,String clsCodeCls){
    	List> attrList = (List>) req.getSession().getAttribute("attrs");
    	if(attrList==null){
    		attrList = searchService.queryShowAttrListByClsCode(clsCodeCls);
    		req.getSession().setAttribute("attrs", attrList);
    	}
    	return JSONArray.fromObject(attrList);//map集合转json,不能用对象集合,空值的字段转换时会报错
    }

impl

    /**
     * 根据元数据类型查询显示属性列表
     * @param ownedClsId 元数据类型
     * @return
     */
    @Override
    public List> queryShowAttrListByClsCode(String ownedClsId){
    	return searchdao.queryShowAttrListByClsCode(ownedClsId);
    }

dao

/**
     * 根据元数据类型查询显示属性列表
     * @param ownedClsId 元数据类型
     * @return
     */
    List> queryShowAttrListByClsCode(@Param("ownedClsId")String ownedClsId);//mybatis 返回map集合用List> 

xml



	

你可能感兴趣的:(------【前端开发篇】)