Maison  >  Questions et réponses  >  le corps du texte

javascript - entrée elementui avec problème de passage du paramètre de sélection de la boîte d'invite

J'ai récemment utilisé elementui pour un projet et j'ai rencontré quelques problèmes.

Exigence : après avoir sélectionné le contenu de l'invite, attribuez une valeur à l'identifiant de la ligne correspondante dans la table de données (l'arrière-plan nécessite que l'identifiant soit transmis, pas la valeur d'entrée).

Question : L'imbrication de tables personnalisées a une entrée rapide et l'API de la fonction de sélection est livrée avec un paramètre. Après avoir ajouté une ligne de paramètres supplémentaire, je ne parviens pas à obtenir les données actuellement sélectionnées ?

<el-table-column align="center" prop="futuresContractId" label="采购合约" width="120">          
          <template scope="scope">
                 <el-autocomplete
                               class="inline-input1"
                               v-model="scope.row.id"
                              :value="scope.row.futuresContractId"
                              :fetch-suggestions="querySearch"
                               placeholder="请输入"
                               :trigger-on-focus="false"
                              @select="handleSelect(scope.row)"
                           >
                   </el-autocomplete>
          </template>
  </el-table-column>
  
 querySearch(queryString, cb) {
        var restaurants = [
            {id:2,name:"M1701",value:"M1701"},
            {id:4,name:"M1705",value:"M1705"}
            {id:8,name:"M1709",value:"M1709"}
        ];
        var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants;
      // 调用 callback 返回建议列表的数据
        cb(results);
     },
     createFilter(queryString) {
       return (restaurant) => {
         return (restaurant.value.indexOf(queryString.toLowerCase()) >= 0);
       };
     },
     handleSelect(row) {
       console.log(row) //?这里可以把当前行row传过来,疑问是如何把选中的值id传给当前的row的id?
       //如不带参数过来,默认参数就是选中的restaurants元素
       },
  
  
  

阿神阿神2638 Il y a quelques jours1185

répondre à tous(1)je répondrai

  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-07-05 10:44:44

    Votre façon de penser est encore une ancienne façon de penser, et il n'y a aucun moyen d'en profiter VueJS.

    Autocomplete 组件,当你选择以后,直接就会把 Value 赋值给你的 v-model="scope.row.id" 的了。所以你的疑问 疑问是如何把选中的值id传给当前的row的id? Pas une question.

    handleSelect(row) {
        // 默认参数就是当前的row
         // row 的 ID 已被改变,无需手动处理
    }

    J'ai créé un exécutable basé sur votre code. Veuillez y jeter un œil. Si votre compréhension est incorrecte, veuillez le signaler à temps.

    https://jsfiddle.net/j6toc479/3/

    répondre
    0
  • Annulerrépondre