extjs多选下拉框lovcombo实现

js文件:

store = new Ext.data.JsonStore({
         url : 'aaa',
         totalProperty : "total",
         root : 'rows',
         fields : ['tname', 'tzname']
        });
      store.load();
       var person = Ext.data.Record.create([{
        name : 'column_name',//store里的字段

        mapping : 0
         // 数组第0个元素
        }, {
        name : 'comments',//store里的字段
        mapping : 1
         // 数组第1个元素
        }]);
       
       // 创建数据解析器
       var reader = new Ext.data.ArrayReader({
        id : 0
         // 必须有,数组第0个元素作为记录id
        }, person);

       // 创建HttpProxy代理
        

       var proxy = new Ext.data.HttpProxy({
          url : 'getColumnByExample'
         });

       // 创建数据集Store
       var ds = new Ext.data.Store({
          autoLoad : true,
          proxy : proxy,
          reader : reader
         });
      ds.load();

form表单:

{
      columnWidth : .5,
      layout : "form",
      items : [{
         fieldLabel : '字段列表',
         xtype : "lovcombo",
         hiddenName : "column_name",
         name : 'column_name',// 和valuefield
         id : 'combo2',
         displayField : 'comments', // 对应下面的数据项
         valueField : 'column_name',
         editable : false,
         triggerAction : 'all',
         hideOnSelect : false,
         mode : "local",//本地读取
         emptyText : "请选择..",
         width : 160,
         scope : this,
         store : ds,//数据源
         readOnly : false
        }]
     }

action代码:

返回形式:

List<Object []> datatableList=bhdataroleService.getColumnByExample(tablename);
         if(datatableList.size()>0 && datatableList!=null){
    ObjectMapper ob=new ObjectMapper();
    message=ob.writeValueAsString(datatableList);
   }else{
    message="0";
   }

直接调用sql语句,不用hql就行……

[["ID","主键"],["DATAROLENAME","角色名称"],["TABLENAME","表名"],["C","C"],["R","R"],["U","U"],["D","D"],["FIELDLIST","FIELDLIST"],["QUERYSCOPE","QUERYSCOPE"],["ADCCONDITION","ADCCONDITION"]]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值