在javascript中从数组中删除单击的项
removing clicked item from array in javascript
我有一个点击功能来列出所选项目。此外,我将所选项目推送到一个数组中。这部分没有问题,这里是函数。
$('#addToCartButton2').click(function(){
var toAdd=$("#chooseItem2 option:selected").text();
var itemNbr2=$("#itemNbr2").val();
if(toAdd !== defaultSelectFormText && itemNbr2 >=1){
$('#defaultText').remove();
$('.col-md-5').append('<p id="items">' + itemNbr2 + ' Adet ' + toAdd + '<span class="extra">Sipariş listesinden çıkarmak için tıklayın!</span>' + '</p>');
ordersArray.push(itemNbr2 + ' Adet ' + toAdd);
alert(ordersArray.toString());
};
});
但我也有一个功能可以从列表中删除点击的项目。所以我想在单击该项时也将其从数组中删除。我尝试使用拼接方法,但无法获得单击项目的索引。这是remove函数。
$(document).on('click', '#items', function() {
$(this).remove();
var index = ordersArray.indexOf($(this).val());
alert(index);
if (index > -1) {
ordersArray.splice(index, 1);
}
});
如何获取列表中单击项目的索引?
首先,要么使项的id唯一,要么像我在这个解决方案中所做的那样使用class而不是id。
$('#addToCartButton2').click(function(){
var toAdd=$("#chooseItem2 option:selected").text();
var itemNbr2=$("#itemNbr2").val();
if(toAdd !== defaultSelectFormText && itemNbr2 >=1){
$('#defaultText').remove();
$('.col-md-5').append('<p class="items"><span>' + itemNbr2 + ' Adet ' + toAdd + '</span><span class="extra">Sipariş listesinden çıkarmak için tıklayın!</span>' + '</p>');
ordersArray.push(itemNbr2 + ' Adet ' + toAdd);
alert(ordersArray.toString());
};
});
$(document).on('click', '.items', function() {
var index = ordersArray.indexOf($('span:first', this).text());
alert(index);
if (index > -1) {
ordersArray.splice(index, 1);
}
$(this).remove();
});
在从列表中删除单击的项目的功能中,进行以下更改:
$(document).on('click', '#items', function() {
var index = ordersArray.indexOf($(this).text());
alert(index);
if (index > -1) {
ordersArray.splice(index, 1);
}
$(this).remove();
});
删除项目的方式似乎有点复杂。为什么不为添加的每个项目使用一个uniqe ID,然后删除呢物品的ID?
相关文章:
- 主体单击删除功能上的输入框宽度
- 单击删除下拉子菜单
- 单击删除其中一个添加的行
- 单击删除时,从表中删除与选定复选框相对应的行
- 单选按钮单击删除错误消息 jQuery
- 通过单击删除同一行中存在的链接来删除特定行
- 当我单击删除按钮时查询未运行,即使 .success 说它有效
- 在 Jquery 中通过单击/单击删除单击的类
- 单击“删除节点”并递减计数器
- 如何在span上获取表td值,然后单击删除该行
- 如何在asp.net和vb.net中单击删除按钮后向后重定向两步
- 单击删除最近的窗体
- 如果我选择上一行日期不更新,并且当单击删除时,顶部总结果值没有减少,则JQuery克隆单击添加更多按钮
- 想要在单击删除链接时删除添加到缩略图中的图像
- JavaScript/JQuery变量需要更改.单击.删除旧号码添加新号码
- 为每个重复的href单击“删除链接”
- 单击删除html和javascript
- 执行删除确认框上单击“删除”
- 通过单击删除特定的JS代码
- 单击删除按钮后,希望取消选中复选框