你要通过JS方式生成datagrid你的table中就不要有任何内容,用columns来声明所有的列

解决方案 »

  1.   

    lZ你是不是有个json.js忘记引入了啊。
    不过我一般不也这样写,我的表的字段就会写在datagrid里面:
    $('#class1_out').datagrid({
    url : 'MyClassServlet',
    method : 'get',
    columns : [ [ {
    field : 'COURSEID',
    title : '课程编号',
    width : 80,
    align : 'center'
    }, {
    field : 'COURSENAME',
    title : '课程名称',
    width : 80,
    align : 'center'
    }, {
    field : 'DISCIPLINENAME',
    title : '专业名称',
    width : 80,
    align : 'center'
    }, {
    field : 'COURSEDESC',
    title : '课程描述',
    width : 150,
    align : 'center'
    }, {
    field : 'FINISH_FLAG',
    title : '是否完成',
    width : 40,
    align : 'center'
    }, {
    field : 'PASS_FLAG',
    title : '是否通过',
    width : 40,
    align : 'center'
    } ] ],
    onHeaderContextMenu : function(e, field) {
    e.preventDefault();
    if (!cmenu) {
    createColumnMenu();
    }
    cmenu.menu('show', {
    left : e.pageX,
    top : e.pageY
    });
    }
    });
    然后就直接在body里面调用这个id的table:
    <table id="class1_out" title="必修课信息" class="easyui-datagrid"
    style="width: 100%; height: 300px; margin-right: 0px;"
    pagination="true" rownumbers="true" fitColumns="true"
    singleSelect="true"></table>
      

  2.   

    用columns来声明所有的列也不显示  ,
    但是   通过  下面的方法   $.get("toUserList.action",function(data,status){
        alert("Data: " + data + "\nStatus: " + status); 
    获取能看到所有数据 ,并且没有转义符
      

  3.   

    lZ你是不是有个json.js                 刚加了入也不行,不知道在哪里用。
    不过我一般不也这样写,我的表的字段就会写在datagrid里面:     按你的方法我试过了也不行,不知道为什么
      

  4.   

    我记得没有转义符。你用firebug的console.debug(json)看看 是对象还是字符串
    字符串且格式正确的话 用eval("("+json+")")试试
      

  5.   

    解决了,不是js的问题 ,是我程序的问题,json字符串用 http://www.open-open.com/lib/view/open1358403487356.html  
    这里面的第一种方法解决了,结贴