首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jquery从列表中删除元素

问Jquery从列表中删除元素
EN

Stack Overflow用户
提问于 2015-11-09 08:35:11
回答 1查看 53关注 0票数 0

我在JQuery中有一个名为additionalInfo的列表,它是使用以下JQuery函数填充的:

代码语言:javascript
复制
$('#append').on('click', function () {
//check if the following area is valid before moving on, check the jquery validation library
    var text = $('#new-email').val();
    var li = '<li>' + text +  'input type="hidden" name="additionalInfo" value="'+text+'"/> </li>';
    $('#additional-info-list').append(li);
    $('#new-email').val('');
});

该函数的意义不仅在于将信息存储在一个列表中供以后使用,而且还用于呈现一个包含信息文本的<li>。现在,我在每个<li>上都有另一个按钮,当按下它时,li会消失,但我还需要向它添加代码,以便从additionalInfo列表中完全删除信息文本。这是我到目前为止为该方法编写的代码:

代码语言:javascript
复制
$('#removeEmail').on('click', 'li>.remove-btn', function (event){

$(event.currentTarget).closest('li').remove();

});

如何从li中获取信息文本段,然后将其从additionalInfo中删除?

EN

回答 1

Stack Overflow用户

发布于 2015-11-09 09:01:16

你几乎没有什么问题。首先,当您创建新项目时,您的标记不正确。您缺少输入标记的左方括号。另外,我更改了delete的代码,以便它侦听li元素下具有类remove-btn的任何项上的单击事件。当您单击li中的remove链接时,这应该会删除该项。

代码语言:javascript
复制
$(function(){

  $('#append').on('click', function () {

    var text = $('#new-email').val();
    var li = '<li>' + text +  '<input type="hidden" name="additionalInfo" 
                      value="'+text+'"/>
               <a href="#" class="remove-btn" >remove</a></li>';
    $('#additional-info-list').append(li);
    $('#new-email').val('');

  });

  $(document).on('click', 'li>.remove-btn', function (event){
     var _this =$(this);
     _this.closest('li').remove(); 
  });

});

下面是一个有效的jsfiddle

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33600775

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档