EditorGridPanel报错:Index or size is negative or greater than the allowed amount

问题描述

代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>WindowTabPanelGrid.html</title><link rel="stylesheet" type="text/css" href="../ext-2.0.2/resources/css/ext-all.css" /><script type="text/javascript" src="../ext-2.0.2/adapter/ext/ext-base.js"></script><script type="text/javascript" src="../ext-2.0.2/ext-all-debug.js"></script><script type="text/javascript">Ext.onReady(function(){Ext.BLANK_IMAGE_URL = '../ext-2.0.2/resources/images/default/s.gif'; var myDataPress = {records : [{ name : "A + B = C"},{ name : "A + C = D"},{ name : "D + E = F"},{ name : "B + G = K"},{ name : "T + E = L"},{ name : "S + W = P"},{ name : "Q + V = O"},{ name : "R + N = D"},{ name : "Q + S = A"}]};var fields = [ {name: 'name', mapping : 'name'}];var Record = Ext.data.Record.create([ {name: 'name', type: 'string'} ]); var gridStore = new Ext.data.JsonStore({ fields : fields,data : myDataPress,root : 'records' });var cols = [{id:'name', header:'公式',width:100, sortable: true, dataIndex: 'name', editor:new Ext.grid.GridEditor(new Ext.form.TextField({ allowBlank: false }))}]; var grid = new Ext.grid.EditorGridPanel({ddGroup : 'gridDDGroup', store : gridStore, columns : cols,enableDragDrop : true, stripeRows : true,autoExpandColumn :'name', width : 150,region : 'west',selModel : new Ext.grid.RowSelectionModel({singleSelect : true}),bbar : new Ext.Toolbar(['-', { text: '添加', handler: function(){ var initValue = {name:''}; var p = new Record(initValue); grid.stopEditing(); gridStore.insert(0, p); grid.startEditing(0, 0); p.dirty = true; p.modified = initValue; if(gridStore.modified.indexOf(p) == -1){ gridStore.modified.push(p); } } }, '-', { text: '删除', handler: function(){ Ext.Msg.confirm('信息', '确定要删除?', function(btn){ if (btn == 'yes') { var sm = grid.getSelectionModel();// 这几行会出错。 var record = sm.getSelected();// 这几行会出错。 store.remove(record);// 这几行会出错。 } }); } }, '-', { text: '保存', handler: function(){ alert('暂时还没有实现保存功能!!'); } }, '-']) });var textField1 = new Ext.form.TextField({fieldLabel : '公式',name : 'name',width :181,readOnly : true});var formPanel = new Ext.form.FormPanel({region : 'center',bodyStyle : 'padding:10px; background-color: #DFE8F6',bodyBorder :false,labelWidth : 100,width : 350,defaults:{labelStyle:'text-align:right;'},items : [textField1,{xtype:'datefield',width:181,fieldLabel:'时间' }, { xtype:'combo', fieldLabel:'其他', store: new Ext.data.SimpleStore({fields: ['countryCode'],data: [['US'],['DE'],['FR']] }), valueField: 'countryCode', displayField: 'countryCode', triggerAction: 'all', editable: false, mode: 'local' }],buttons:[{text:'检验',handler:function(){alert('检验');}},{text:'重置',handler:function(){alert('重置');}}]});var displayPanel = new Ext.Panel({width : 500,height : 300,layout : 'border',items : [grid,formPanel]});var myData = [ ['A + B = Y', '07/30/2010', '未通过'], ['A + B = Y', '09/21/2010', '通过'], ['D + B = E', '07/05/2010', '通过'], ['T + R = K', '05/25/2005', '未通过'] ]; var store = new Ext.data.SimpleStore({ fields: [ {name: 'expression'}, {name: 'time'}, {name: 'pass'} ] });store.loadData(myData); var cm = new Ext.grid.ColumnModel([{header:'公式', dataIndex:'expression'}, {header:'时间', dataIndex:'time'}, {id:'pass', header:'是否通过', renderer:function(value){if(value == '通过'){return '<span style="color:green;">通过</span>'}else{return '<span style="color:red;">未通过</span>'}}, dataIndex:'pass'} ]); Ext.MyGrid =new Ext.grid.GridPanel({bodyBorder:true, store:store, cm:cm,autoExpandColumn:'pass'}); Ext.MyPanel = new Ext.Panel({buttonAlign:'center',bodyBorder:false,layout:'form',bodyStyle:'padding:50px 20px;',defaults:{labelStyle:'text-align:right;'}, items:[ {xtype:'textfield',fieldLabel:'公式' }, {xtype:'datefield',fieldLabel:'时间' }, { xtype:'combo', fieldLabel:'其他', store: new Ext.data.SimpleStore({fields: ['countryCode'],data: [['US'],['DE'],['FR']] }), valueField: 'countryCode', displayField: 'countryCode', triggerAction: 'all', editable: false, mode: 'local' } ],buttons:[{text:'检验',handler:function(){alert('检验');}},{text:'重置',handler:function(){alert('重置');}}]}); Ext.MyTab = new Ext.TabPanel({ autoTabs:true, activeTab:0, deferredRender:false, border:false,items:[{title:'交验',id:'tab1',layout:'fit',width:500,height:300,items:displayPanel},{title:'查看',id:'tab2',layout:'fit',width:500,height:300,items:Ext.MyGrid}]}); Ext.MyWindow = new Ext.Window({title:'指标校验', layout:'fit', width:500, height:300, closeAction:'hide', plain: true, items: Ext.MyTab}); Ext.MyWindow.render(Ext.getBody()); Ext.MyWindow.show();var formPanelDropTargetEl = formPanel.body.dom;var formPanelDropTarget = new Ext.dd.DropTarget(formPanelDropTargetEl, {ddGroup : 'gridDDGroup',notifyEnter : function(ddSource, e, data) {//Add some flare to invite drop.//formPanel.body.stopFx();formPanel.body.highlight();},notifyDrop : function(ddSource, e, data){var selectedRecord = ddSource.dragData.selections[0];formPanel.getForm().loadRecord(selectedRecord);return(true);}});});</script><style type="text/css">.x-date-middle { padding-top:2px;padding-bottom:2px; width:130px; /* FF3 */} </style></head><body></body></html>点击删除后 ,弹出的点yes ,就会出错!!望赐教!! 问题补充:babydeed 写道

解决方案

我用ext3.2测试的 代码没改 没有你说的问题

时间: 2024-08-02 05:17:23

EditorGridPanel报错:Index or size is negative or greater than the allowed amount的相关文章

apk 反编译-apktools 反编译失败报错

问题描述 apktools 反编译失败报错 Config flags size > 36. Exceeding bytes: 0xFFFF. W: Invalid config flags detected: style-v17-ERR0 Exception in thread "main" brut.androlib.AndrolibException: Could not decode arsc file at brut.androlib.res.decoder.ARSCDe

extjs sencha-extj报错IndexOutOfBoundsException: Index: 0, Size: 0

问题描述 extj报错IndexOutOfBoundsException: Index: 0, Size: 0 <!DOCTYPE HTML> <html manifest=""> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta charset="UTF-8"> <title&

代码-Tomcat服务器打开的index.jsp页面一片空白,后台没报错

问题描述 Tomcat服务器打开的index.jsp页面一片空白,后台没报错 连http://localhost:8080/这个小猫页面也显示不出来,百度了很多都没找到解决办法,刚建立web项目什么都没有的时候起前端是能打开的,虽然这时候http://localhost:8080/也是打不开,但是写了代码就打不开了,就一个index.jsp就是一个登录页面而已,想不出代码哪里会有问题.我觉得这里应该就算代码有问题也是能打开的吧,只是不能登录而已(是用shh框架做的项目,现在只做了登录这里而已就不

index-link如何对一个文件夹下的数据文件排序,报错,Index out of range

问题描述 link如何对一个文件夹下的数据文件排序,报错,Index out of range link如何对一个文件夹下的数据文件排序,报错,Index out of range List data = new List(); foreach (var file in Dictionary.GetFiles("e:华新采集", "*.txt")) { data.AddRange(File.ReadAllLines(file).Skip(2)); } var que

MySQL 启动报错:File ./mysql-bin.index not found (Errcode: 13)_Mysql

Linux下安装初始化完MySQL数据库之后,使用mysqld_safe启动mysql数据库,如下发现,启动失败 [root@SVNServer bin]# ./mysqld_safe –user=mysql& 或 [root@SVNServer bin]# /etc/init.d/mysqld startStarting MySQL. ERROR! The server quit without updating PID file (/data/mysql/AY1402081609347760

更新text字段时出现Row size too large报错应付措施_Mysql

起因: 团购开发报告说更新时出错. 更新SQL如下: 复制代码 代码如下: UPDATE table_name d SET d.column_name='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' WHERE d.ID=100976; 报错信息如下: Error Code : 1118 Row si

PHP “Notice: Undefined variable” 和 “Notice: Undefined index”报错

解决Notice: Undefined variable报错 虽然 PHP不需要预先声明变量,但是依然强烈推荐大家声明以避免因为忘记给变量赋值而引起的一些安全性漏洞及可能的BUG.所以PHP以非常低的报警级别(E_NOTICE)来提醒大家正在使用一个未声明的变量. 当然解决以上报错有如下几种方法,根据场景选择适合自己的: 1.(推荐)提前声明变量,例如当你想要为一个未声明的变量连接字符串的时候.或者使用isset()/!empty()来检查是否已经声明: $value = ""; //

PHP Undefined index报错的修复方法_php技巧

虽然可以通过设置错误显示方式来隐藏这个提示,但是这样也有隐患,就是在服务器的日志中会记录这些提示,导致日志文件异常庞大. 首先,这个不是错误,是warning.所以如果服务器不能改,每个变量使用前应当先定义.网上流行的解决方法有以下几种: 方法1:服务器配置修改.修改php.ini配置文件,error_reporting = E_ALL & ~E_NOTICE. 方法2:对变量进行初始化,规范书写(比较烦琐,因为有大量的变量).但还没有找到好定义方法,望大家指教. 方法3:每个文件头部加上:er

nodejs写的聊天室chome一直在报错求解

问题描述 nodejs写的聊天室chome一直在报错求解 写了一个聊天室,但是chrome控制台一直在报错,这是我的项目目录:html部分代码 <!DOCTYPE html><html> <head> <meta charset=""utf-8"" /> <title></title> <link rel=""stylesheet"" href=&q