Kaynağa Gözat

录入营养素时,聚焦input输入框后,全选输入框的内容,方便直接编辑

wangyang 5 yıl önce
ebeveyn
işleme
8b40186805
1 değiştirilmiş dosya ile 16 ekleme ve 10 silme
  1. 16 10
      src/views/food/nutrient.vue

+ 16 - 10
src/views/food/nutrient.vue

@@ -24,21 +24,22 @@
         <el-radio v-model="params.radio" :label="2" @change="radioChange(params)">误差</el-radio>
         <div v-if="params.radio === 1" style="display: inline-block">
           大于等于:
-          <el-input v-model="params.quantityMin" style="width: 80px;" class="filter-item" />
+          <el-input v-model="params.quantityMin" style="width: 80px;" class="filter-item" @focus="getInputFocus" />
           小于等于:
-          <el-input v-model="params.quantityMax" style="width: 80px;" class="filter-item" />
+          <el-input v-model="params.quantityMax" style="width: 80px;" class="filter-item" @focus="getInputFocus" />
         </div>
         <div v-else-if="params.radio === 2" style="display: inline-block">
           基准:
-          <el-input v-model="params.quantity" style="width: 80px;" class="filter-item" />
+          <el-input v-model="params.quantity" style="width: 80px;" class="filter-item" @focus="getInputFocus" />
           ±:
-          <el-input v-model="params.stdError" style="width: 80px;" class="filter-item" />
+          <el-input v-model="params.stdError" style="width: 80px;" class="filter-item" @focus="getInputFocus" />
         </div>
         <el-input
           v-else
           v-model="params.quantity"
           style="width: 80px;"
           class="filter-item"
+          @focus="getInputFocus"
         />
         <el-autocomplete
           class="inline-input"
@@ -59,6 +60,7 @@
           v-model="params.nvSpec"
           style="width: 80px;"
           class="filter-item"
+          @focus="getInputFocus"
         />
         <el-autocomplete
           class="inline-input"
@@ -106,21 +108,22 @@
             <el-radio v-model="row.radio" :label="2" @change="radioChange(row)">误差</el-radio>
             <div v-if="row.radio === 1" style="display: inline-block">
               大于等于:
-              <el-input v-model="row.quantityMin" />
+              <el-input v-model="row.quantityMin" @focus="getInputFocus" />
               小于等于:
-              <el-input v-model="row.quantityMax" />
+              <el-input v-model="row.quantityMax" @focus="getInputFocus" />
             </div>
             <div v-else-if="row.radio === 2" style="display: inline-block">
               基准:
-              <el-input v-model="row.quantity" />
+              <el-input v-model="row.quantity" @focus="getInputFocus" />
               ±:
-              <el-input v-model="row.stdError" />
+              <el-input v-model="row.stdError" @focus="getInputFocus" />
             </div>
             <el-input
               v-else
               v-model="row.quantity"
               style="width: 80px;"
               class="filter-item"
+              @focus="getInputFocus"
             />
           </template>
           <span v-else>{{ row | nutrientQuantityFilter }}</span>
@@ -145,7 +148,7 @@
       <el-table-column label="Nv_Spec" align="center" width="80">
         <template slot-scope="{row}">
           <template v-if="row.edit">
-            <el-input v-model="row.nvSpec" class="filter-item" />
+            <el-input v-model="row.nvSpec" class="filter-item" @focus="getInputFocus" />
           </template>
           <span v-else>{{ row.nvSpec }}</span>
         </template>
@@ -173,7 +176,7 @@
       <el-table-column label="信息来源备注" align="center" width="200">
         <template slot-scope="{row}">
           <template v-if="row.edit">
-            <el-input type="text" :rows="2" v-model="row.sourceNote" />
+            <el-input type="text" :rows="2" v-model="row.sourceNote" @focus="getInputFocus" />
           </template>
           <span v-else>{{ row.sourceNote }}</span>
         </template>
@@ -374,6 +377,9 @@ export default {
           break
         }
       }
+    },
+    getInputFocus(event) {
+      event.currentTarget.select();
     }
   }
 }