我目前有以下情况:
我有多个复选框,一旦单击任何复选框,它的值将添加到数组中。如果未选中该复选框,则需要再次将该项从数组中删除。
selectAddOn(addOnId) {
if (! this.selectedAddOns.includes(addOnId)) {
this.selectedAddOns.push(addOnId);
}
}
以下操作有效,并将它们添加到我的selectedddons[]
中。但当再次选中该复选框时,它不会被删除。当然,我可以使用其他
,但是。。。
不幸的是,当您单击
<div @click="selectAddOn(index)" class="col-6" v-for="(addOn, index) in categories[categoryId].addOns">
<label class="custom-control custom-checkbox">
<input type="checkbox" class="custom-control-input">
<span class="custom-control-indicator"></span>
<span class="custom-control-description">{{ addOn.name }} (+ ${{ addOn.price }})</span>
</label>
</div>
你知道我该怎么解决这个问题吗?
将单击事件处理程序放在输入上。
js lang-js prettyprint-override">console.clear()
new Vue({
el: "#app",
data:{
selectedAddOns:[],
categories:[
{
addOns:[
{name: "AddOn One", price: 10},
{name: "AddOn two", price: 20},
{name: "AddOn Three", price: 30},
]
},
],
categoryId: 0
},
methods:{
selectAddOn(addOnId) {
let index = this.selectedAddOns.findIndex(a => a === addOnId)
if (index >= 0)
this.selectedAddOns.splice(index, 1)
else
this.selectedAddOns.push(addOnId);
}
}
})
<script src="https://unpkg.com/vue@2.4.2"></script>
<div id="app">
Selected Addons: {{selectedAddOns}}
<div class="col-6" v-for="(addOn, index) in categories[categoryId].addOns">
<label class="custom-control custom-checkbox" >
<input type="checkbox" class="custom-control-input" @click="selectAddOn(index)" >
<span class="custom-control-indicator"></span>
<span class="custom-control-description">{{ addOn.name }} (+ ${{ addOn.price }})</span>
</label>
</div>
</div>
当与多个复选框上的数组一起使用时,这是v-Model
的内置行为。您不需要单击处理程序。(代码无耻地摘自伯特的回答。)
console.clear()
new Vue({
el: "#app",
data:{
selectedAddOns:[],
categories:[
{
addOns:[
{name: "AddOn One", price: 10},
{name: "AddOn two", price: 20},
{name: "AddOn Three", price: 30},
]
},
],
categoryId: 0
}
})
<script src="https://unpkg.com/vue@2.4.2"></script>
<div id="app">
Selected Addons: {{selectedAddOns}}
<div class="col-6" v-for="addOn, index in categories[categoryId].addOns">
<label class="custom-control custom-checkbox" >
<input type="checkbox" class="custom-control-input" :value="index" v-model="selectedAddOns" >
<span class="custom-control-indicator"></span>
<span class="custom-control-description">{{ addOn.name }} (+ ${{ addOn.price }})</span>
</label>
</div>
</div>
问题内容: 我正在尝试添加和删除被单击的li元素上的类。这是一个菜单,当我单击每个li项目时,我希望它获得该课程,而所有其他li项目都将其删除。因此,一次只有一个li项目上课。这就是我走了多远(见小提琴)。我不确定如何使“ about-link”从当前类开始,但是当单击其他li项之一时将其删除吗? 问题答案: 为什么不尝试这样的事情?
在这里,表的id是从删除按钮传递的。但我无法从数据库和表中删除该记录。代码如下:
我需要做的是-添加/删除数组中每个复选框的名称(由用户选中/未选中),并发送到服务器。我被困在以下代码中。任何帮助都很感激。谢啦 复选框项目。js
主要内容:JSF数据表添加删除实例JSF中有一个叫作的控件,可用来渲染和格式化表格。使用,我们可以迭代收集或数组数组来显示数据。 具有以简单的方式修改其数据的属性。 要使用,我们需要添加以下HTML头。 以下JSF标签 - 被渲染成以下HTML标签。 JSF数据表添加删除实例 打开 NetBeans IDE 创建一个Web工程:DataTableAddDelete,其目录结构如下所示 - 创建以下文件代码,文件:index.xht
我有这样的标记 和像这样的JS 所以在这里,我希望当我点击课程时,只有课程内容会显示出来,就像这样,当我点击配置文件和库时,只有配置文件和库会显示出来。在这里,它的工作很好,但我想知道如何添加一个类活动时,一个项目被点击在锚标记。假设我点击了lessons,那么一个活动类应该被添加到lessons锚标记中,当我点击了profile,那么活动类应该被从lessons锚标记中移除,它应该在profil
下面的代码是我的按钮操作的一部分。Jtable contain last row is复选框。单击“保存”按钮时,所选行必须从表行中删除 执行的操作代码