x291944973 2016-01-11 03:49 采纳率: 0%
浏览 1676
已采纳

mvc模式的extjs4中pannel多选问题(在线等 急)

需求:我需要在查询列表面板panel中添加多选项,并可以通过点击查询面板panel上的按钮获取查询列表面板的所有选中值。
现象:方法一、我使用selModel : new Ext.selection.CheckboxModel(),点击查询面板的按钮可以获取到多选值,通过弹出框显示出来,但是关闭弹出框以后,只能通过表头的多选框进行全选或取消全选,单击列表中的个别行或行前的多选框就没反应;
方法二、我使用selModel : {selType : 'checkboxmodel'},multiSelect:true,点击查询面板的按钮就获取不到多选值了,总提示获取到的值为空。
注意:获取选中项方法我使用的是Ext.widget("bfbRefundSettlementGridView").getSelectionModel().getSelection();不支持getSelections()方法,也不支持getSelection(),也不支持Ext.widget("bfbRefundSettlementGridView").getSelectionModel().getSelection()[0].data方法。

部分代码如下:
//定义组件
Ext.define('MB.view.bfbRefundSettlement.BfbRefundSettlementGridView', {
extend : "Ext.grid.Panel",
alias : 'widget.bfbRefundSettlementGridView',
store: "MB.store.BfbRefundSettlementStore",
selModel : {
selType : 'checkboxmodel'
},
multiSelect:true,//允许多选
autoRender:true,
columnLines: true,
width: '100%',
loadMask: true, // 读取数据时的遮罩和提示功能即加载loding...
frame: true,
resizable: true,
forceFit: false,
height:500,
initComponent : function() {
Ext.QuickTips.init();
var sm = new Ext.selection.CheckboxModel();
var me = this;
me.columns = [
{ text:'序号', xtype: 'rownumberer', width:50 },
{ header: '批次号', dataIndex: 'billNo',width: 150,align: 'center'},···
···
//controller中的按钮方法:
var grid = Ext.widget("bfbRefundSettlementGridView");
var records = grid.getSelectionModel().getSelection();
if(records.length==0){
Ext.MessageBox.show({

title:"提示",

msg:"请先选择您要操作的行!"
});
return;
}else{
for(var i = 0; i < records.length; i++){
ids += records[i].get("billNo");
if(i<records.length-1){
ids = ids + ",";

}
}
Ext.MessageBox.alert('提示',ids);
}

    或者使用方法一 ,使得弹出提示框后仍可以选中获取消个别行,或者使用方法二,可以获取选中行。我看不出问题到底出在哪里,还请各位ext高手指教。
  • 写回答

1条回答 默认 最新

  • Go 旅城通票 2016-01-11 07:14
    关注

    Ext.widget创建新的对象,又不是你显示的,给控件widget起id,通过Ext.getCmp获取

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 虚拟机打包apk出现错误
  • ¥30 最小化遗憾贪心算法上界
  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝