我有以下代码:
<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();
});
});
但是上面的代码有两个问题:如果我删除任何项目,符号 ,
不会被删除,这是错误的第二个,我不能有一个空的 ()
字符串,所以:
- 如何删除
,
,这样我就不会得到像(,1213381233)
或(1213381233,)
这样的错误字符串?
有什么帮助吗?我给你留了一个Fiddle和玩。这是一个 WIP,因此如果您有建议或更好的解决方案,请随时将其添加到您的答案中。
最佳答案
我不会对逗号进行硬编码,而是仅当一行中有多个项目时才使用 CSS :before
添加逗号。
.condition_item+.condition_item:before {
content: ", "
}
关于javascript - 如何删除项目删除时的 ","?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40550385/