使用jQuery删除所选项目(不在选项字段内)

时间:2018-12-29 09:57:33

标签: javascript jquery semantic-ui

我有一个菜单列表,如下图所示,如果我选择应该删除该元素的任何一项,则这些值是从DB绑定的。我该怎么办?

image

这是我的jquery代码

$.get(url, function (d) {
  self.dt = [];
  self.firmData = JSON.parse(d.Data);
  self.firmData.forEach(function (data) {
  $("#itemlists").append("<div class='item'>" + data.DisplayName + "</div>");
  self.dt.push(data.DisplayName);
   });
 });

这是我的HTML:

<div class="active content menu scrollbar" style="max-height:365px; overflow:auto;">
    <div id="itemlists" style="z-index:999" class="ui divided selection list">
    </div>
</div>

现在,如果我选择一项并尝试将其删除,则这些值来自api。它正在删除所有项目,而我只想删除所选项目。我该怎么办?

编辑

    "click #itemlists .item": function (e) {
         var text = $(e.target).text()
         $(this).remove();
    },
  

我尝试使用上述方法,但这同时也删除了所有项目

2 个答案:

答案 0 :(得分:0)

当点击class ='item'元素时,它将被删除。

$(".item").on( "click", function() {
  $(this).remove();
});

答案 1 :(得分:0)

首先我正在录制所选文本

var text = $(selectedOpts).val();
  

然后过滤来自this.data的数据并将其传递给变量removeItem

const removeItem = value => this.data.filter(item => item.columnsexpo != value)
  

现在,我将

的值分配给this.data
this.data = removeItem(text)
  

现在this.data包含已删除的项目,仅显示我们需要的数据