Explorar el Código

多选下拉组件绑定赋值逻辑

zhuth hace 7 años
padre
commit
0e24f4b680
Se han modificado 1 ficheros con 15 adiciones y 4 borrados
  1. 15 4
      frontend/saas-web/app/view/core/form/MultiCombo.js

+ 15 - 4
frontend/saas-web/app/view/core/form/MultiCombo.js

@@ -75,15 +75,26 @@ Ext.define('saas.view.core.form.MultiCombo', {
     },
     onCheckChange:function(checkItem, checked){
         var items=this.menu.items.items,
-            rawV,v;
+            checkedItems = [];
         Ext.Array.each(items,function(item){
             if(item.checked){
-                rawV=rawV?rawV+','+item.text:item.text;
-                v=v?v+","+"'"+item.checkValue+"'":"'"+item.checkValue+"'";
+                checkedItems.push({
+                    text: item.text,
+                    value: item.checkValue
+                });
             }
         });
+        this.setValue(checkedItems);
+        this.publishState('value', checkedItems);
+    },
+
+    setValue: function(items) {
+        var rawV = '';
+        rawV = items.map(function(item) {
+            return item.text
+        }).join(',');
         this.setRawValue(rawV);
-        this.value=v;
+        this.value = items;
     },
 
     showMenu: function (e, menu) {