【发布时间】:2016-04-21 20:57:19
【问题描述】:
我有一个附加了 v-model 的输入文本字段,每次有人点击“添加”按钮时,都会将另一个输入文本添加到 DOM 中,并附加相同的 v-model。我以为我会得到一个 v-model 值的数组,但它只获取第一个 v-model 输入的值:
<div id="app">
<div id="references">
<input v-model="references" type="text">
</div>
<button @click="addReference">Add</button>
</div>
我附加到dom的html是由addReference方法触发的:
addReference: function(e) {
e.preventDefault();
console.log(this.references);
var inputEl = '<input v-model="references" type="text">';
$('#references').append(inputEl);
}
这是 Vuejs 做不到的吗?使用 Vuejs 从动态 dom 元素中收集值是否有不同的方法?
new Vue({
el: "#app",
data: {
references: "text"
},
methods: {
addReference: function(e) {
e.preventDefault();
console.log(this.references);
var inputEl = '<input v-model="references" type="text">';
$('#references').append(inputEl);
}
}
})
input {
display: block;
margin: 1px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="app">
<div id="references">
<input v-model="references" type="text">
</div>
<button @click="addReference">Add</button>
</div>
【问题讨论】:
-
在使用 Vue 几年后回首往事,在这个个人的“你好世界”Vue 问题让我微笑,走了很长一段路:D 再次感谢 @Bill Criswell
-
我喜欢听到这个!抱歉,我没有早点看到这个。
-
没问题 ^^ Vue 让做相当复杂的事情变得如此简单,仍然非常喜欢它