移除& lt; p>元素

Removing <p> element with jQuery

本文关键字:元素 移除 lt      更新时间:2023-09-26

这是一个jQuery函数,用于确定表中图像的类并采取相应的操作。如果图像父类没有selected,它将给它这个类,然后将td id添加到div(顺序)中。如果它确实有selected类,它应该去掉这个类,它有,然后去掉含有td id的p元素。

$(document).ready(function () {
    $('td img').click(function () {
        if ($(this).parent().hasClass('x')) {
            alert("Seat " + ($(this).parent().attr("id")) + " is taken");
        } else if ($(this).parent().hasClass('selected')) {
            $(this).attr('src', 'images/a.gif');
            $(this).parent().removeClass('selected');
            var z = $(this).parent().attr('id');
            $(z).remove();
            return false;
        } else {
            $(this).attr('src', 'images/c.gif');
            $(this).parent().addClass('selected');
            alert($(this).parent().attr("class"));
            var z = $(this).parent().attr('id');
            $('<p>').attr('id', z).text(z).appendTo('#order');
            return false;
        };
    });
});

它工作直到删除p元素,在那里它只是没有。p id是动态设置的,与td id相同,因此使用变量来选择id。

好吧,这是一个组合的答案在这里。

首先,这些id不是唯一的,所以我给它们添加了一个后缀:

var z = $(this).parent().attr('id'); $('<p>').attr('id', z+'1' ).text(z).appendTo('#order');'

然后使用$('#' + z).remove();的建议,但将其更改为我的新后缀,所以现在显示的是$('#' + z+'1').remove();

现在一切正常,谢谢你的帮助。