如果两者具有相同的 id,如何使用 jquery 单击动态按钮来删除动态跨度

How to remove dynamic span by clicking dynamic button using jquery if both have same id?

本文关键字:动态 单击 jquery 何使用 按钮 删除 id 如果      更新时间:2023-09-26

我正在使用动态按钮创建这些动态跨度,我想在单击按钮时删除相应的跨度

示例:如果有人点击 id 为 1 的按钮,则使用 jquery 删除 id 1 的范围(删除而不是隐藏(

<span id="1">text</span><button id="1">X</button>
<span id="2">text</span><button id="2">X</button>
<span id="3">text</span><button id="3">X</button>
<span id="4">text</span><button id="4">X</button>
<span id="5">text</span><button id="5">X</button>

我已经创建了这个,但不起作用,我是 jquery 的新手。

<script>
    $("button").click(function() {
        var id =  this.id;
        $( "span #"+id ).remove();
    });
</script>
id s

必须是唯一的,请使用data属性来存储相应的id s。

此外,您的选择器$( "span #" + id )将选择一个具有某些id的元素,该元素是span 的子元素。取下span,这是不必要的。

$("button").click(function() {
  var id = $(this).data('id');
  $("#" + id).remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<span id="1">text</span><button data-id="1">X</button>
<span id="2">text</span><button data-id="2">X</button>
<span id="3">text</span><button data-id="3">X</button>
<span id="4">text</span><button data-id="4">X</button>
<span id="5">text</span><button data-id="5">X</button>

属性class的第一组,删除id

试试这个代码:

<script>
$("button").click(function() {
    $(this).prev('span').remove();
});
</script>

id 应该是唯一的,除此之外,您可以使用这样的东西:

$('span[id="text'+id+'"]')

$('#text'+id)

<span id="text1">text</span><button id="button1">X</button>