如何删除","关于项目删除?

时间:2016-11-11 14:44:15

标签: javascript jquery

我有以下代码:

<ul class="ul" id="selected_conditions">
  <li data-field="asset_locations_name" data-condition="in">
    <i class="fa fa-minus-circle delete_condition" aria-hidden="true" title="Click to remove this condition from the list"></i> WHERE asset_locations_name IN(
    <span class="condition_item" data-id="1213381233">
    <i class="fa fa-minus-circle delete" title="Click to remove this item from the list" aria-hidden="true"></i> 1213381233
    </span>,
    <span class="condition_item" data-id="1212371897">
    <i class="fa fa-minus-circle delete" title="Click to remove this item from the list" aria-hidden="true"></i> 1212371897
    </span> )
  </li>
</ul>

每次我点击小图标.delete时,我应该删除当前值,然后我可以使用以下代码实现该目标:

$(function() {
  $('#selected_conditions').on('click', '.delete', function(ev) {
    var item_id = $(this).parent().data('id');
    $('.condition_item[data-id="'+ item_id +'"]').remove();
  });
});

但是上面的代码有两个问题:如果我删除了任何项目,那么符号,就不会被删除而且那个错误作为第二个我无法使用emtpy ()字符串,所以:

  • 如何移除,,以便我最终找不到像(,1213381233)(1213381233,)这样的错误字符串?

有任何帮助吗?我给你留了一个Fiddle来玩。这是一个WIP,所以如果您有建议或更好的解决方案,请随时将其添加到您的答案。

1 个答案:

答案 0 :(得分:3)

不是硬编码逗号,我只使用CSS :before来添加逗号,只有当一行中有多个项目时才会使用逗号。

.condition_item+.condition_item:before {
  content: ", "
}

https://jsfiddle.net/8184ok2e/2/