tangjunhao преди 2 месеца
родител
ревизия
b76f2e60ef
променени са 3 файла, в които са добавени 41 реда и са изтрити 10 реда
  1. 13 2
      src/view/InfoDialoges.vue
  2. 14 4
      src/view/components/InfoRun.vue
  3. 14 4
      src/view/result/leftcontent.vue

+ 13 - 2
src/view/InfoDialoges.vue

@@ -174,7 +174,9 @@
                                                     default-first-option :reserve-keyword="false" value-key="code"
                                                     @change="selectchange($event)" placeholder="请选择">
                                                     <el-option v-for="item in options" :key="item.coid"
-                                                        :label="item.name" :value="item" />
+                                                        :label="item.name" :value="item" 
+                                                        :disabled="value.length >= 2 && !value.some(v => v.coid === item.coid)"
+                                                        />
                                                 </el-select> 
                                             </el-form-item>
                                         </div>
@@ -1125,6 +1127,15 @@ const timeclick = () => {
 }
 //  下拉多选
 const selectchange = (val) => {
+    if (val.length > 2) {
+        val = val.slice(0, 2);
+        nextTick(() => {
+            value.value = val;
+        });
+        message.warning('最多只能选择2个污染物');
+        return;
+    }
+
     let arr1 = [];
     let arr2 = [];
     for (let i = 0; i <= val.length - 1; i++) {
@@ -1133,7 +1144,7 @@ const selectchange = (val) => {
     }
     tuiyanobj.value.coids = arr1.join(',');
     tuiyanobj.value.cocodes = arr2.join(',');
-}
+};
 //推演的开始计算
 const calculate = () => {
     percentage.value=0;

+ 14 - 4
src/view/components/InfoRun.vue

@@ -164,9 +164,12 @@
                                                 </el-select> -->
                                                 <el-select v-model="value" multiple filterable allow-create
                                                     default-first-option :reserve-keyword="false" value-key="code"
+                                                    :max="2"
                                                     @change="selectchange($event)" placeholder="请选择">
                                                     <el-option v-for="item in options" :key="item.coid"
-                                                        :label="item.code" :value="item" />
+                                                        :label="item.code" :value="item" 
+                                                        :disabled="value.length >= 2 && !value.some(v => v.coid === item.coid)"
+                                                        />
                                                 </el-select> 
                                             </el-form-item>
                                         </div>
@@ -841,17 +844,24 @@ const timeclick = () => {
 }
 //  下拉多选
 const selectchange = (val) => {
-    console.log(val);
+    if (val.length > 2) {
+        val = val.slice(0, 2);
+        nextTick(() => {
+            value.value = val;
+        });
+        message.warning('最多只能选择2个污染物');
+        return;
+    }
+
     let arr1 = [];
     let arr2 = [];
     for (let i = 0; i <= val.length - 1; i++) {
-        console.log(val[i])
         arr1.push(val[i].coid);
         arr2.push(val[i].code);
     }
     tuiyanobj.value.coids = arr1.join(',');
     tuiyanobj.value.cocodes = arr2.join(',');
-}
+};
 //推演的开始计算
 const calculate = () => {
     rizhi.value.logs='';

+ 14 - 4
src/view/result/leftcontent.vue

@@ -165,9 +165,12 @@
                                                 </el-select> -->
                                                 <el-select v-model="value" multiple filterable allow-create
                                                     default-first-option :reserve-keyword="false" value-key="code"
+                                                    :max="2"
                                                     @change="selectchange($event)" placeholder="请选择">
                                                     <el-option v-for="item in options" :key="item.coid"
-                                                        :label="item.code" :value="item" />
+                                                        :label="item.code" :value="item" 
+                                                        :disabled="value.length >= 2 && !value.some(v => v.coid === item.coid)"
+                                                        />
                                                 </el-select> 
                                             </el-form-item>
                                         </div>
@@ -863,17 +866,24 @@ const timeclick = () => {
 }
 //  下拉多选
 const selectchange = (val) => {
-    console.log(val);
+    if (val.length > 2) {
+        val = val.slice(0, 2);
+        nextTick(() => {
+            value.value = val;
+        });
+        message.warning('最多只能选择2个污染物');
+        return;
+    }
+
     let arr1 = [];
     let arr2 = [];
     for (let i = 0; i <= val.length - 1; i++) {
-        console.log(val[i])
         arr1.push(val[i].coid);
         arr2.push(val[i].code);
     }
     tuiyanobj.value.coids = arr1.join(',');
     tuiyanobj.value.cocodes = arr2.join(',');
-}
+};
 //推演的开始计算
 const calculate = () => {
     rizhi.value.logs='';