ss0121 2010-01-20 13:03
浏览 387
已采纳

Ext grid 动态表头的例子

如题,因为表头可能要从数据库查出来。所以求动态表头的例子~

  • 写回答

3条回答 默认 最新

  • chanball 2010-01-20 16:43
    关注

    给你个参考吧:
    [code="js"]
    Ext.onReady(function(){
    //header也就是你应该从后台取回的表头数据,现在写死在了这里
    var headers = [{name: 'company',header:'Company'},{name: 'price',header:'Price'},{name: 'change',header:'change'}]
    var store = new Ext.data.SimpleStore({
    fields: headers
    });
    var columns = [];
    Ext.each(headers,function(h){
    columns.push({
    header:h.header,
    dataIndex:h.name
    });
    });

    var grid = new Ext.grid.GridPanel({
        store: store,
        columns: columns,
        stripeRows: true,
        height:350,
        width:600,
        title:'Array Grid'
    });
    
    grid.render('grid');
    

    });
    [/code]

    上面从后台取表头的时候应该用同步方法调用后台,而不是用异步,如果用异步的话,会出现你还没拿到后台的表头数据就实例化了grid.
    给你个同步请求的方法:
    [code="js"]
    var syncRequest = function(url) {
    var conn = Ext.lib.Ajax.getConnectionObject().conn;
    try {
    conn.open("GET", url, false);
    conn.send(null);
    } catch (e) {
    Ext.Msg.alert('info','error');
    return false;
    }
    return Ext.decode(conn.responseText);
    }
    //把上面的headers改为
    var headers = syncRequest(url);
    后台的返回数据为headers的内容就行啦
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿