vue中<select>绑定事件

<div id="app">
        <select v-model="selectItem" @change="selectFn($event)">
            <!--选择项的value值默认选择项文本 可动态绑定选择项的value值 更改v-model指令绑定数据-->
            <option v-for="item in items" :value="item.id">{{item.name}}</option>
        </select>
        <div>{{selectItem}}</div>    <!--选择项的value值-->
    </div>
    <script>
        new Vue({
            el: '#app',
            data: {
                selectItem: '分类1',
                items: [
                    {id:11, name: '分类1'},
                    {id:22, name: '分类2'},
                    {id:33, name: '分类3'}
                ]
            },
            methods: {
                selectFn(e) {
                    console.log(e)
                    console.log(e.target.selectedIndex) // 选择项的index索引
                    console.log(e.target.value) // 选择项的value
                }
            }
        })
    </script>

 

转载于:https://www.cnblogs.com/jianglibaizhi/p/10650683.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用 Vue.js 来实现这个功能,具体的代码如下: <template> <div id="app"> <div> <span>姓名:</span> <input type="text" v-model="name" /> </div> <div> <span>年龄:</span> <input type="number" v-model="age" /> </div> <div> <span>性别:</span> <select v-model="gender"> <option value="男">男</option> <option value="女">女</option> </select> </div> <div> <button @click="addOrUpdate">添加/修改</button> </div> <div> <table border="1" cellpadding="10" cellspacing="0"> <tr> <th>序号</th> <th>姓名</th> <th>年龄</th> <th>性别</th> <th>操作</th> </tr> <tr v-for="(item, index) in dataList" :key="index"> <td>{{ index + 1 }}</td> <td>{{ item.name }}</td> <td>{{ item.age }}</td> <td>{{ item.gender }}</td> <td> <button @click="deleteItem(index)">删除</button> <button @click="editItem(index)">编辑</button> </td> </tr> </table> </div> </div> </template> <script> export default { data() { return { name: "", age: "", gender: "男", dataList: [], editIndex: -1, // 当前正在编辑的数据的索引 }; }, methods: { addOrUpdate() { if (this.editIndex === -1) { // 添加数据 this.dataList.push({ name: this.name, age: this.age, gender: this.gender, }); } else { // 修改数据 this.dataList[this.editIndex].name = this.name; this.dataList[this.editIndex].age = this.age; this.dataList[this.editIndex].gender = this.gender; this.editIndex = -1; } // 清空表单 this.name = ""; this.age = ""; this.gender = "男"; }, deleteItem(index) { this.dataList.splice(index, 1); }, editItem(index) { this.editIndex = index; // 把当前正在编辑的数据的值赋给表单 this.name = this.dataList[index].name; this.age = this.dataList[index].age; this.gender = this.dataList[index].gender; }, }, }; </script> 在这个代码,我们使用了 Vue.js 的数据和列表渲染等功能,实现了添加、修改、删除和编辑数据的功能。其,添加和修改数据的方法是通过判断 editIndex 是否为 -1 来实现的,如果是 -1,就表示当前是添加数据,否则就是修改数据。编辑数据的方法则是把当前正在编辑的数据的值赋给表单,并保存正在编辑的数据的索引。删除数据的方法使用了 splice 方法,根据索引删除指的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值