javascript - jquery 从数组中删除项目不起作用

标签 javascript jquery

我能够找到答案,我做了一些改变,并尝试使其工作,但没有成功。

我想在用户按 x 按钮时删除项目:

部分JS代码:

    animals = temp;
    for (var i = 0; i < animals.length; i++) {
        newOutput += '<p>' + animals[i] 
                   + '<input type="number" class="animals-input pull-right text-right" value="0" />' 
                   + '<a href="#" onClick="deleteItem(' + animals[i] 
                   + ')" class="pull-right delete-item">x</a></p>';
    };
    $('.animals-input').innerHTML = newOutput;

full js fiddle code

有什么想法吗?

谢谢。

最佳答案

你可以这样做:

  for (var i = 0; i < animals.length; i++) {

    newOutput.push('<p>' + animals[i] + '<input type="number" class="animals-input pull-right text-right" value="0" />' + '<a href="#" onClick="deleteItem(\'' + i + '\')" class="pull-right delete-item">x</a></p>');
  };
  $('#list').html(newOutput.join(""));

Updated Demo

你需要改变这一点

onClick="deleteItem(' + animals[i] + ')"

onClick="deleteItem(\'' + i + '\')"

如在 deleteItem() 函数中一样,您传递的是数组索引而不是数组值。另外,在将参数传递给函数时需要加上引号,否则会出错。

关于javascript - jquery 从数组中删除项目不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38305214/

相关文章:

javascript - 通过 ClassName 在 DOM 中查找引用节点

javascript - 检测数组中的元素

javascript - 在页脚上粘贴 div 元素

javascript - 隐藏其子元素后如何纠正元素的高度?

javascript - Flot Re-scale Yaxis min/max on X-axis scale

javascript - 如何在 NodeJs 中更改 package.json 中的主文件

javascript - 获取日期时间字符串的偏移量并应用于新的日期对象

javascript - 如何使用javascript在txt文件的新行中打印对象数组的每个对象?

javascript - 使 Div 固定底部和可滚动

javascript - 更改附加表行字段的名称 jQuery