您现在的位置: 破洛洛 >> 建站学院 >> 网站开发 >> javascript >> 正文

vue.js删除动态绑定的radio的指定项

作者:佚名 来源:网络整理 更新时间:2017-8-1
分享到

上图效果,动态添加绑定radio选项,然后也可以动态删除,右边编辑器删除,左边的视图也对应的删除。

视图代码 view:

"<ul><li v-for='option in options'>" + 
 "<input type='radio' :name='groupName'>{{option.text}}" + 
"</li></ul>", 

数据绑定model.options:

options: [{ id: 1, text: '选项1', checked: false }, { id: 2, text: '选项2', checked: false }] 

动态添加:

vm.options.push({ id: "", text: "新选项", checked: false }); 

动态删除指定radio,我们存储的是json对象动态添加到options数组中去,取的时候在每个事件可以传入$event对象,可以获取到当前事件源,DOM对象,但是vm.options是个数组,没法很好的匹配DOM来删除指定的数组项。
在我们循环绑定数据的时候一般是 v-for:"item in items" 忘了他还有一个index属性,当前元素的索引.

这里就简单了,我们在动态循环绑定操作radio数据的时候,把index加上

"<p v-for='(option,optionIndex) in options' @mouseenter='optionEnter($event,optionIndex)' >" 

然后根据索引来删除options的指定选项,就容易了

vm.options.splice(optionIndex, 1); 


转载请注明:破洛洛(谢谢合作)
网友评论: