Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Javascript中更改ExtJS网格高度_Javascript_Extjs_Window_Height - Fatal编程技术网

在Javascript中更改ExtJS网格高度

在Javascript中更改ExtJS网格高度,javascript,extjs,window,height,Javascript,Extjs,Window,Height,如何指向ExtJS网格的对象并手动设置高度(以像素为单位) 例如,使用相同的: var grid = new Ext.grid.GridPanel({ store: store, columns: [ {id:'company',header: 'Company', width: 160, sortable: true, dataIndex: 'company'}, {header: 'Price', width: 75, sortable: tr

如何指向ExtJS网格的对象并手动设置高度(以像素为单位)

例如,使用相同的:

var grid = new Ext.grid.GridPanel({
    store: store,
    columns: [
        {id:'company',header: 'Company', width: 160, sortable: true, dataIndex: 'company'},
        {header: 'Price', width: 75, sortable: true, renderer: 'usMoney', dataIndex: 'price'},
        {header: 'Change', width: 75, sortable: true, renderer: change, dataIndex: 'change'},
        {header: '% Change', width: 75, sortable: true, renderer: pctChange, dataIndex: 'pctChange'},
        {header: 'Last Updated', width: 85, sortable: true, renderer: Ext.util.Format.dateRenderer('m/d/Y'), dataIndex: 'lastChange'}
    ],
    stripeRows: true,
    autoExpandColumn: 'company',
    height: 350,
    width: 600,
    title: 'Array Grid',
    // config options for stateful behavior
    stateful: true,
    stateId: 'grid'        
});
我可以指向“网格”对象,然后设置网格的大小吗


任何帮助都会很棒

我不太确定我是否理解你的意思。是否要在网格初始化时或渲染后设置网格高度

要使用php设置启动时的高度,请使用:

var heigtht_set = <?php echo $grid_height ?>;

var grid = new Ext.grid.GridPanel({
    store: store,
...
    height: heigtht_set ? heigtht_set : 350,
...       
});

除上述Thariama答案外,如果没有或无法保留对“grid”变量的引用,则可以为正在创建的组件提供ID,并在稍后的代码中使用
ExtJS::getCmp
方法获取对使用其ID创建的ExtJS组件的引用。请注意,在此配置中,配置属性“ID”设置为“myGrid”

var grid = new Ext.grid.GridPanel({
    store: store,
    columns: [
        {id:'company',header: 'Company', width: 160, sortable: true, dataIndex: 'company'},
        {header: 'Price', width: 75, sortable: true, renderer: 'usMoney', dataIndex: 'price'},
        {header: 'Change', width: 75, sortable: true, renderer: change, dataIndex: 'change'},
        {header: '% Change', width: 75, sortable: true, renderer: pctChange, dataIndex: 'pctChange'},
        {header: 'Last Updated', width: 85, sortable: true, renderer: Ext.util.Format.dateRenderer('m/d/Y'), dataIndex: 'lastChange'}
    ],
    stripeRows: true,
    autoExpandColumn: 'company',
    height: 350,
    width: 600,
    title: 'Array Grid',
    // config options for stateful behavior
    stateful: true,
    stateId: 'grid',
    id: 'myGrid'
});
启动网格后,打开firebug,以下代码将设置网格的高度:

Ext.getCmp('myGrid').setHeight(600);
+1表示Ext.getCmp('myGrid')。设置高度(600);非常有用的提示总是设置一个id并使用它。
Ext.getCmp('myGrid').setHeight(600);