这个multiselect的值是从后台数据库中读出来的,比如现在有四项分别是1,2,3,4,我选择了其中1,2,保存。现在从后台数据库中已经读出数据1,2,怎么样赋给页面上的这个multiselect,就是说需要1,2,3,4都出现,其中1,2是选中的状态?
多谢

解决方案 »

  1.   

    有没有人指点一下啊,我这一直提示:this.view is undefined
    搜了一圈,也没找到答案
      

  2.   

    有4个记录,想都显示出来并且1,2项是选中的状态?
    调用multiselect的setValue()方法就行了
    把1,2项的值一起传进去
      

  3.   


         store:[['1','one'],['2','two']...]
         multiselectObj.setValue([1,2]);
      

  4.   

    setValue()这个括号中是什么参数?数组?还是字符串?我试了一下,得不到啊
      

  5.   

    字符串你试一下
    setValue('1,2');
      

  6.   

    var multiselect = new Ext.ux.form.MultiSelect({
         //xtype: 'multiselect',
         fieldLabel: 'Platform',
         name: 'multiselect',
         width: 200,
         height: 80,
         displayField:'name', 
         valueField: 'name',        
          mode: 'local', 
         allowBlank:false,
         store: [['1', 'One'], ['2', 'Two'], ['3', 'Three'], ['4', 'Four'], ['5', 'Five']]
    });
    定义如上
    multiselect.setValue([2,3]);
    multiselect.setValue('2,3');
    都试过了,仍然提示this.view is undefined
      

  7.   

    没有人再指教一下吗?跟extjs版本有关系吗?我搜了一个例子用setvalue,那个extjs版本是1.1,我的版本是3.2
      

  8.   

    ext-3.2.0\examples\multiselect
    这里面有列子的 自己看下吧
      

  9.   

    setValue(["1","2"]);//是一个数组也可以是string的
    setValue("1");
    你用3.2的多选控件看看
    在examples/multiselect/multiselect-demo.html目录
      

  10.   

    2.2的版本是:setValue([])字符串都行,3.2的就不知道了,你自己要看看了。
      

  11.   

    终于知道了我那个报错是啥意思了,setvalue确实有用,但是要在整个页面的数据加载完之后才能setvalue,我如果整个store的数据是从数据库中取出来的,就不能直接setvalue了,把setvalue放在某个button或者别的控件的事件中是可以的。
    这样就有了一个新问题,怎样能在页面初始化的时候就setvalue??前提是store从后台数据库读取。
      

  12.   

    要用到store.add()和store.remove()方法
    不可能左边的项拖到了右边,左边还显示出来吧。
      

  13.   


    为store添加load事件,在load的时候调用
      

  14.   

    添加load事件后问题解决,多谢诸位