Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.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 不显示带有锁定列的网格_Javascript_Extjs_Extjs4.1 - Fatal编程技术网

Javascript 不显示带有锁定列的网格

Javascript 不显示带有锁定列的网格,javascript,extjs,extjs4.1,Javascript,Extjs,Extjs4.1,我试图在web应用程序中插入带有锁定列的数据网格 如果我在没有锁定列的情况下显示栅格,则一切正常。当我锁定一个列时,会创建网格,但它非常小(只是一个很小的正方形,使它基本上不可见) 为什么会发生这种情况?我如何修复它 以下是我所拥有的: for (var i = 0; i < this.fields.length; i++) { var currentField = this.fields[i]; fields.push(currentField.columnName);

我试图在web应用程序中插入带有锁定列的数据网格

如果我在没有锁定列的情况下显示栅格,则一切正常。当我锁定一个列时,会创建网格,但它非常小(只是一个很小的正方形,使它基本上不可见)

为什么会发生这种情况?我如何修复它

以下是我所拥有的:

for (var i = 0; i < this.fields.length; i++) {
    var currentField = this.fields[i];
    fields.push(currentField.columnName);
    columns.push({
        header: currentField.name,
        dataIndex: currentField.columnName,
        hidden: i >= 4,
        locked: i == 1
    });
}
Ext.create('Ext.data.Store', {
    storeId: 'resultsStore',
    fields: fields,
    data: results
});
var grid = Ext.create('Ext.grid.Panel', {
    store: "resultsStore",
    columns: columns,
    title: 'Results',
    renderTo: "actualResultsContainer",
    height: 250,
    width: 500,
    enableLocking: true,
});
for(var i=0;i=4,
锁定:i==1
});
}
Ext.create('Ext.data.Store'{
storeId:'resultsStore',
字段:字段,
数据:结果
});
var grid=Ext.create('Ext.grid.Panel'{
存储:“结果存储”,
列:列,
标题:“结果”,
renderTo:“实际结果容器”,
身高:250,
宽度:500,
enableLocking:true,
});

编辑如果我尝试重新创建所有内容(渲染后从上面重复所有操作),网格将被创建,从现在开始,它将正常运行。我遗漏了什么?

它应该像你写的那样工作。检查是否及时创建了要渲染网格的
div

如果创建存储并将其作为变量保存,会发生什么。。。var store=Ext.create('Ext.data.store',{…var grid=Ext.create('Ext.grid.Panel'),{store:store,然后删除enableLocking?网格显示了吗?有错误吗?两件事:
enableLocking
如果列定义中有
locked:true
,则不需要指定。我不确定-但我认为您只能锁定第一列,看起来您正在尝试锁定第二列,不是吗?@JohnMoses我尝试了你所说的,但没有发生任何事情。仍然是相同的问题。@sha我删除了
启用锁定
,列数与此无关。如果列被
锁定
,它将被移到左侧。为了确保这一点,我尝试将第一列
锁定
,但是sue坚持。我会尝试简化事情-将列声明移动到网格声明中。不要使用循环和其他对象-只需手动定义列。我仍然觉得奇怪,只有在锁定列时,它才真正找到div。如果是这种情况,那么即使没有锁定列,问题也应该发生专栏(我希望我的解释足够清楚:D)。无论如何,它现在似乎是固定的,虽然这可能不是一个好主意,我将保持它的原样。