gpt4 book ai didi

javascript - 如何使用 javascript 根据您单击的项目从数组中删除特定项目

转载 作者:行者123 更新时间:2023-12-03 12:06:21 24 4
gpt4 key购买 nike

我希望能够单击列表项(由数组的项组成)并将其从数组中永久删除。当我使用remove()单击时,我可以将其删除,但是当我向数组中添加另一个项目时,该项目会显示出来,加上我刚刚添加的新项目。

JSFIDDLE 帐号:http://jsfiddle.net/trav5567/3s64o1ta/1/

Javascript

      function testArray(){
var Fruit = ['apple', 'bannanna', 'rasberry', 'watermelon', 'grape', 'orange'];
function initArray(){
loopArray();
}initArray();
function myFruit(){
$('#addFruit').on('click', function(e) {
e.preventDefault();
var flag = true;
var val = $('#fruitAdd').val();
for(var i = 0 ; i < Fruit.length ; i ++){
if(Fruit[i] == val){
flag = false;
console.log('already entered this item');
}
}
if(flag){
Fruit.push(val);
loopArray();
}
});
}myFruit();
function loopArray(){
var fruitList = $('ul.fruit');
var arrayContainer = $('.arrayContainer');
fruitList.empty();
for(var i = 0; i< Fruit.length; i++){
fruitList.append('<li>'+Fruit[i]+'</li>');
}
}
function removeItem(){
var itemClicked = $('ul.fruit li');
itemClicked.on('click', function(){
$(this).remove();
});
}removeItem();
}testArray();

最佳答案

单击时不会从数组中删除项目,您只是在单击时删除包含元素的 li 标记,为了在单击项目的 li 时也从数组中删除元素,您必须使用 splice 方法从数组中删除元素作为

    var itemClicked = $('ul.fruit li');
itemClicked.on('click', function () {
$(this).remove();
var item = $(this).text();
var index = Fruit.indexOf(item);
Fruit.splice(index,1);
});

Check the Working Fiddle Here

关于javascript - 如何使用 javascript 根据您单击的项目从数组中删除特定项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25174134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com