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条回答 默认 最新

  • 斯洛文尼亚旅游 2016-01-11 07:14
    关注

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

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

报告相同问题?

悬赏问题

  • ¥15 labview程序设计
  • ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
  • ¥15 Cloudreve保存用户组存储空间大小时报错
  • ¥15 伪标签为什么不能作为弱监督语义分割的结果?
  • ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
  • ¥15 游戏盾如何溯源服务器真实ip?
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。
  • ¥50 win10链接MySQL
  • ¥15 抖音看过的视频,缓存在哪个文件