zw19900913 2013-04-23 12:35
浏览 377
已采纳

Extjs4 rowEditing 在startEdit 方法上的错误

新学Extjs,做一个表单的CRUD,看到网上有介绍rowEditing插件的就想尝试着用用,但是在startEdit(0,0)这句上会报错,提示Uncaught TypeError: Object 0 has no method 'get' 不知道是什么原因,希望能有人帮忙解释一下。附上grid,store,model,controller的部分代码。

希望大家能不吝赐教。

 

grid:

plugins: [ Ext.create('Ext.grid.plugin.RowEditing', {
    pluginId:'rowEditing',
             saveBtnText: '保存',
             cancelBtnText: "取消",
             clicksToEdit: 1
         }) ],

 

store:

Ext.define("staffManagement.store.staffStore",{
 extend:"Ext.data.Store",
 model:"staffManagement.model.staffModel",
 pageSize:4,
  proxy:{
  type:"ajax",
  waitMsg : '数据加载中...',
  url:"/SSH/js/loadAllStaffAction.action",  
  /*url:"/SSH/js/test.json",*/
  reader:{
   type:"json",
   root:"list",
   totalProperty :'totalCount'  
  },
  writer:{
   type:"json"
  }
  },
 autoLoad:true
});

 

model:

Ext.define("staffManagement.model.staffModel",{
 extend:"Ext.data.Model",
 fields:[
  {name:"userId",type:"int",srotable:true},
  {name:"name",type:"string",srotable:true},
  {name:"userPassword",type:"string",srotable:true},
  {name:"sex",type:"string",srotable:true},
  {name:"birthday",type:"date",srotable:true}
 ]
});

 

controller:

Ext.define("staffManagement.controller.staffController", {
 extend : "Ext.app.Controller",
 init : function() {
  this.getGrid = function(button) {
   return button.ownerCt.ownerCt;
  };
  this.control({
   "staffGrid button[id=add]" : {
    click : function(button) {

     var store = Ext.getStore('staffStore');

     
     var adminObj = Ext.create('staffManagement.model.staffModel',{}); 

   
     store.insert(0,adminObj);
     
     var rowEditing = Ext.getCmp('staffGrid').editingPlugin; 
     
     rowEditing.startEdit(0,0);

  
    }
   },

  • 写回答

3条回答 默认 最新

  • Dead_Knight 2013-04-23 13:25
    关注

    你应该把下面代码抽出来写
    [code="java"]
    var rowEditing = Ext.create('Ext.grid.plugin.RowEditing', {
    pluginId:'rowEditing',
    saveBtnText: '保存',
    cancelBtnText: "取消",
    clicksToEdit: 1
    });
    [/code]

    然后放到plugins属性中:
    [code="java"]
    plugins: [rowEditing],
    [/code]

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

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵