vue中v-model动态生成

最近在做公司的项目中,有这么一个需求,每一行有一个input和一个select,其中行数是根据服务器返回的json数据动态变化的。那么问题来了,我们要怎样动态生成v-model
现在项目做完了就整理了一下,直接贴代码了。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript" src="js/vue.js" ></script>
    </head>
    <body>
        <div id="app">
            <div class="line" v-for="(item,index) in dataModel">
                <input type="text" v-model="dataModel[index].value1" />
                <span>{{dataModel[index].value1}}</span>
                <button v-bind:data-index="index" v-on:click="submitClick">提交</button>

                <input type="text" v-model="dataModel[index].value2" />
                <span>{{dataModel[index].value2}}</span>
            </div>
        </div>
    </body>
    <script>
        var app = new Vue({
            el: "#app",
            data: {
                // 创建一个空的数组 
                dataModel: []
            },
            created: function(){
                // 这里是动态生成v-model,这个可以放在网络请求成功里面;
                var len = 4;
                for (var i = 0; i < len; i ++) {
                    var item = {value1: '',value2: ''};
                    this.dataModel.push(item);
                }
            },
            methods: {
                // 显示v-model里面的数据
                submitClick: function(event){
                    var tag = event.target;
                    var index = tag.getAttribute('data-index');
                    alert(this.dataModel[index].value1);
                }
            }
        })
    </script>
</html>

效果图:
2

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值