【发布时间】:2017-04-25 00:27:52
【问题描述】:
我想从多选字段中选择一个选项并更新所选对象的 prozent 值:
<div id="assistenzen">
<form>
<select v-model="assistenz" multiple>
<option v-for="option in options" v-bind:value="option">
{{ option.text }}
</option>
</select>
<ul>
<li v-for="(assi, prozent) in assistenz">{{assi.text}}
<input v-model="assistenz" v-bind:value="prozent">
{{assi.prozent}}
</li>
</ul>
</form>
</div>
<script>
var assistenz = new Vue({
el: '#assistenzen',
data: {
assistenz: 'keine Assistenz',
options: [
{ text: 'One', value: 'A', prozent: '0' },
{ text: 'Two', value: 'B', prozent: '0' },
{ text: 'Three', value: 'C', prozent: '0' }
]
},
});
assistenz.config.devtools = true
</script>
此代码为每个选定的选项创建一个输入,但整个选项文本作为值存储在输入中。它也不会更新对象的属性。
【问题讨论】:
-
我没有得到问题所在,但您需要注意的事项很少。 1.
assistenz存储为字符串,您尝试对其使用array.push。 2. 您正在尝试遍历仍然是字符串的assistenz。 -
好的,我想用一个或多个选项替换assistenz,并在下一步更新所选选项的prozent值。
-
v-model已经绑定了值。同时使用v-bind:value没有意义。如果你同时拥有这两种情况,我不确定这会导致什么行为。 -
好吧,我不确定如何更新数组元素的属性 - 我可以更新整个数组的属性,但如何访问其中一项?
标签: javascript vue.js