1

我有一个按钮<button onclick="takedown()">,当它被点击时,JQuery 将在输入和按钮中创建一个带有文本 ID 的新按钮,当点击该按钮时,它将调用一个deltebutton()应该删除按钮的函数,但我需要 JQuery 来获取调用该函数的按钮的 id 并将其设置为名为 id 的字符串。

我试过了$(event.target).attr('id');$(this).attr('id');但他们两个都没有工作。

这是功能

    function takedown(){

note = document.getElementById("noteinput").value;

idh1 = note + "h1";
idbutton = note + "button";
idcenter = note + "center";

$('<center id="' +idcenter + '"> <h1 idh1="' + idh1 + '">' + note + '</h1> <button id="'+ idbutton +'" onclick="deletenote()"> Delete </button> </center>').appendTo("body");


}

function deletenote(){

    String id = $(event.target).attr('id');

    $(id).remove();

}

如果有人知道如何做到这一点,那将非常有帮助。

4

2 回答 2

3

不要在 JS 和 jQuery 中使用字符串。你的选择器是错误的。

function deletenote(){
    var id = event.target.id;
    $('#'+id).remove();
}

另外我认为您可以在不获取 ID 的情况下调用 remove 。

function deletenote(){
    $(this).remove();
}
于 2013-11-05T17:36:22.667 回答
1

基于先前答案和评论的更简单的解决方案是:

function deletenote(){
   $(event.target).remove();
}
于 2013-11-25T17:42:13.760 回答