Vuejs單擊打開按鈕時如何顯示選擇列表

越光新鮮

我是這樣寫的,但是當我按下按鈕時,所有組合框都會出現,但我希望當我按下任何組合框中的按鈕時,只有組合框才會出現
HTML

             <div class="m-combobox">
                <div class="select-list" :class="{'sl-activate':isActivate}">
                    <div class="select-item" v-for="item in departments" :key="item.DepartmentId">
                        <i class="fas fa-check"></i>
                        <div class="select-item-text">{{item.DepartmentName}}</div>
                    </div>
                </div>
                <div class="select">
                    <input class="m-combobox-input" type="text" placeholder="Chọn/Nhập thông tin">
                    <div class="m-combobox-button" @click="activateCbb">
                        <i class="fas fa-angle-down"></i>
                    </div>
                </div>
            </div>
            <div class="m-combobox">
                <div class="select-list" :class="{'sl-activate':isActivate}">
                    <div class="select-item" v-for="item in positions" :key="item.PositionId">
                        <i class="fas fa-check"></i>
                        <div class="select-item-text">{{item.PositionName}}</div>
                    </div>
                </div>
                <div class="select">
                    <input class="m-combobox-input" type="text" placeholder="Chọn/Nhập thông tin">
                    <div class="m-combobox-button" @click="activateCbb">
                        <i class="fas fa-angle-down"></i>
                    </div>
                </div>
            </div>


data

data: function () {
return {
  positions: [],
  departments: [],
  isActivate: false,
};
}


Method

methods:{
activateCbb() {
  this.isActivate = !this.isActivate;
},
}

全部謝謝!

尼古拉·帕維切維奇

嘗試如下代碼片段:

new Vue({
  el: '#demo',
  data() {
    return {
      positions: [{PositionId:1, PositionName:'ccc'}, {PositionId:2, PositionName:'ddd'}],
      departments: [{DepartmentId:1,DepartmentName: 'aaa'}, {DepartmentId:2,DepartmentName: 'bbb'}],
      isActivate: null,
    };
  },
  methods:{
    activateCbb(type) {
      if(this.isActivate === type) {
        this.isActivate = null
      } else {
        this.isActivate = type
      }
    },
  }
})

Vue.config.productionTip = false
Vue.config.devtools = false
.sl-activate {
  display: block;
}
.inactive {
  display: none;
}
<link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.10.0/css/all.css" integrity="sha384-AYmEC3Yw5cVb3ZcuHtOA93w35dYTsvhLPVnYs9eStHfGJvOvKxVfELGroGkvsg+p" crossorigin="anonymous"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="demo">
  <div class="m-combobox">
      <div class="select-list" :class="isActivate === 'd' ? 'sl-activate' : 'inactive'">
          <div class="select-item" v-for="item in departments" :key="item.DepartmentId">
              <i class="fas fa-check"></i>
              <div class="select-item-text">{{item.DepartmentName}}</div>
          </div>
      </div>
      <div class="select">
          <input class="m-combobox-input" type="text" placeholder="Chọn/Nhập thông tin">
          <div class="m-combobox-button" @click="activateCbb('d')">
              <i class="fas fa-angle-down"></i>
          </div>
      </div>
  </div>
  <div class="m-combobox">
      <div class="select-list" :class="isActivate === 'p' ? 'sl-activate' : 'inactive'">
          <div class="select-item" v-for="item in positions" :key="item.PositionId">
              <i class="fas fa-check"></i>
              <div class="select-item-text">{{item.PositionName}}</div>
          </div>
      </div>
      <div class="select">
          <input class="m-combobox-input" type="text" placeholder="Chọn/Nhập thông tin">
          <div class="m-combobox-button" @click="activateCbb('p')">
              <i class="fas fa-angle-down"></i>
          </div>
      </div>
  </div>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在按角度單擊按鈕時顯示日期選擇器?

如果空選擇選項,則在單擊按鈕時顯示模態引導程序

嘗試在單擊按鈕時顯示 JOptionPane

單擊按鈕後如何顯示 iframe

單擊文本按鈕顫動時如何顯示包含卡片的 ListView

如何在 JavaScript 中單擊按鈕時顯示元素

簡單的 tkinter 問題 - 按鈕命令(單擊時顯示其他文本)

單擊單選按鈕以使用 jquery 打開或關閉

如何製作一個在 HTML 中單擊時將顯示項目的按鈕

當我單擊按鈕時,如何使 <button> 在 console.log 中顯示特定文本?

單擊按鈕時如何刪除選項

如何構建僅在用戶單擊單擊按鈕時才顯示輸出的閃亮應用程序?

我試圖在單擊按鈕時顯示消息警報

單擊導航欄按鈕時組件不顯示

單擊javascript中的按鈕時顯示表格數據行

Javascript:如何顯示數組中的一定數量的項目並在單擊按鈕時顯示其他項目?

Android:為 EditText 打開鍵盤時處理後退按鈕單擊

Bootstrap 4 - 單擊下拉按鈕時防止打開模態

單擊按鈕打開記錄器

單擊“顯示更多”按鈕後如何發布新內容?

如何通過單擊按鈕顯示隱藏文本?

如何在按鈕單擊時提交離子單選按鈕值?

打開選擇而不單擊子組件

單擊按鈕時如何返回?

如何根據用戶單擊的按鈕打開不同樣式的頁面?

選擇不同的單選按鈕時,如何去除第一個單選按鈕的效果?

單擊另一個按鈕後顯示一個按鈕

pyqt5 python:單擊同一對話框上的“重試”按鈕時如何保持打開對話框

如何在單擊按鈕時取消選中復選框?