动态添加input,文本框输入第一次没反映

动态添加input,文本框需要键盘按几次才能输入到文本框
图片描述


<div  v-for="(item,index) in specList">
            <div class="layui-form-item">
                    <label class="layui-form-label">规格名称</label>
                    <div class="layui-input-inline" >
                      <input type="text" v-model="specList[index].spec[index]" lay-verify="required"  placeholder="规格名称" autocomplete="off" class="layui-input">
                    </div>
                    <div class="layui-input-inline"  >
                      <button type="button" class="layui-btn layui-btn-primary"  @click="delSpec(index)">
                          <i class="layui-icon"></i>
                        </button>
                    </div>
            </div>
            <div class="layui-form-item">
                    <label class="layui-form-label">规格值</label>
                    <div class="layui-input-inline"  >
                      <input type="text" v-model="specList[index].values[index]" lay-verify="required"  placeholder="规格值" autocomplete="off" class="layui-input">
                    </div>
                    <div class="layui-input-inline"  >
                      <button type="button" class="layui-btn layui-btn-primary">
                          <i class="layui-icon"></i>
                        </button>
                        <button type="button" class="layui-btn layui-btn-primary">
                          <i class="layui-icon"></i>
                        </button>
                    </div>
            </div>
        </div>
specList: [{
    spec: [],
    values: []
}]
addSpec: function(){
    var data={};
    data.values=[];
    data.spec=[];
    vm.specList.push(data);
},

回答:

specList[index].values[index] 这里的第二个 index 有问题

先理解一下这里的 index 的含义,是 specList 的下标,怎么会用于 specList 的元素对象中的 values 属性

回答:

specList[index].spec[index]

改成

item.spec

暂无评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注