jquery - 如何检测 VueJS 中的选定索引?

标签 jquery vue.js vuejs2

我有这个 VueJS 代码:

new Vue({
    el: '#app',
    data: {
        model: [
            { name: 'a', price: 1.00 },
            { name: 'b', price: 2.00 },
            { name: 'c', price: 3.00 },
        ],
        actived: {}
    },
    methods: {
       setActive: function(model) {
           this.actived = model;
       }
    }
});

并有这个 HTML 代码:

<select v-on:change="setActive(models[n])">
    <option v-for="n in 3">{{ n }}</option>
</select>

我想将我的事件数据值更新为所选模型。例如,用户在选择字段上更改第二个选项,我想将第二个模型的数据传递到激活值中。

有没有办法检测所选选项的索引?可能与 jQuery 或其他...结合使用?

最佳答案

您可以使用 v-model 来实现它在 select .所选值将传递给您的 active Prop :

new Vue({
  el: '#app',
  data: {
    model: [
        { name: 'a', price: 1.00 },
        { name: 'b', price: 2.00 },
        { name: 'c', price: 3.00 },
    ],
    active: {}
  }
});
<script src="https://unpkg.com/vue/dist/vue.js"></script>

<div id="app">
  <select v-model="active"> // v-model
    <option :value="n" v-for="n in model">{{ n.name }}</option> // bind value
  </select>
  <p>{{ active }}</p>
</div>

注意我们遍历了 model数组本身并将元素绑定(bind)到 value option 的属性(此值设置为选定的一个并通过 active 传递给 v-model)。

关于jquery - 如何检测 VueJS 中的选定索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44582260/

相关文章:

jquery - 响应式垂直页面导航的边框问题

javascript - 当我们使用分页时,如何将所有页面中的所有选定值附加到文本框中

javascript - Vue.js - 更改我动态创建的未定义 img 源

css - Vue datetimepicker - 月 View 仅显示 1 行

javascript - 将动态数据附加到 vue js v-for 而不重新渲染整个列表?

jquery - 如何附加嵌套的ul

javascript - 在网站上的选择框中选择背景

javascript - Vuex 是否像 Vue 的计算属性一样监视属性缓存?

javascript - 动态 svg xlink :href not rending the icons in browser

javascript - 如何在 v-for 循环中使用 BootstrapVue - Modal?