最近项目里用Ext Grid ,现在有一段代码,其中三个参数我不清楚接收的到底是什么值,请教各位指点一下。
代码如下:
Ext.onReady(function(){
var path = $("input[name=path]").val();

var sm = new Ext.grid.CheckboxSelectionModel({

});    //问题在此处!!!          javascript代码没找到办法标红,请各位伤眼细看一下。谢谢
    //此函数的三个参数不清楚,求解释
var oper = function( val, cellmeta, record ){
alert(val + "     ---     " + record + "     ===     " + cellmeta);
//var templateId = record.get('id');
var delBtn="<button onclick='delFloatIp()'>删除</button>";
var assignBtn="<button onclick='assignFloatIp()'>分配</button>";
return delBtn + "&emsp;" + assignBtn;
    }; var cm= new Ext.grid.ColumnModel([
    //sm,
  {header: 'IP', dataIndex: 'ip', width: 250, align:'center', sortable: true},
  {header: 'Instance', dataIndex: 'instance', width: 300, align:'center', sortable: true},
  {header: '操作', dataIndex: 'oper', width: 300, align:'center', renderer:oper}
  ]);
var store = new Ext.data.JsonStore({
url: path+'/internet/floating_list.action',
autoLoad: true,
totalProperty: 'totalCount',
    successProperty: 'success',
    root: 'list',
    baseParams: {start: 0, limit: 10},
    fields: [{name: 'id'},{name: 'ip'},{name: 'instance'}]
});
    //页面布局部分
    var globalPanel = new Ext.Panel({
height: 395,
layout: 'border',
border: false,
items:[{
    split: true,
    width: 200,
height: 200,
split: true,
region:'center',
contentEl: 'queryGrid',              
border: false               
}]
    });
var grid = new Ext.grid.GridPanel({
title: '',
stripeRows: true,
loadMask: true,
border: true,
height: 395,
cm: cm,
//sm: sm,
store: store,
bbar: new Ext.PagingToolbar({   
        pageSize: 10,
        store: store,   
        displayInfo: true,   
        displayMsg: '<s:text name="iros.common.grid.record.note"/>',//'当前第 {0} - {1} 条记录 / 共 {2} 条',
emptyMsg: '<s:text name="iros.common.grid.emptyMsg.note"/>'//目前无相关数据
    })
});
grid.render('queryGrid');
});
不明白的参数已经标明,请熟悉的朋友帮忙解释一下,三个参数接收的各是什么值。非常感谢。

解决方案 »

  1.   

    val是绑定的数据值
    cellmeta是应用到<td>的样式和属性
    record是一条记录,val只是record里的一个值其实还有3个参数
    rowIndex : Number grid里的行数
    colIndex : Number grid里的列数
    store : Ext.data.Store grid绑定的数据一般用第一个参数就可以了
      

  2.   

    可以去网上查询ExtJS的API文档,里面比较详细
      

  3.   

    我有个Ext 的API文档,可能是文档不好,没找到。刚用firebug断点调试了下,看了三个属性的值,可是val的值是未定义啊,这是为什么呢?record的里面东西很多,有我需要的值。请问下我的第一个参数alert为未定义可能原因是什么呢,还有第二个参数cellmeta一般使用时应该没什么用吧?可以的话帮我解答下吧,谢谢。
      

  4.   

    你的store里面只有fields: [{name: 'id'},{name: 'ip'},{name: 'instance'}]dataIndex对应store里的字段,没有oper字段