使用第二个toggle删除在第一个toggle中实现的span

Remove a span implemented in first toggle using second toggle

本文关键字:toggle 实现 span 第一个 第二个 删除      更新时间:2023-09-26

我在删除一个span时遇到了问题,该span是在第一次单击toggle时创建的,在第二次单击toggle时删除的。

$(document).ready(function(){
$("td").toggle(
    function(){
        var current = $("input[name=prices]:checked").val();
        $(this).html("<img src='images/1.gif'/>");
        $(".summary").append("<br><span class = 'newticket' id = 'null'>");
        $("#null").attr("id",$(this).attr("id"));
        $(".summary").append("1 x ");
        if(current == 'full'){
            $(".summary").append("full price ticket.");
        }
        $(".summary").append(" Seat: ");
        $(".summary").append($(this).attr("id"));
        if(current == 'full'){
            $(".summary").append(" Price: £10</span>");
        }
    },
    function(){
        $(this).html("<img src='images/a.gif'/>");
        $("span#" + $(this).attr("id")).remove();
});
});

如果我点击表的值,span就会被添加,但是如果我再次点击表的值,span就不会被删除。

不应该添加未关闭的标记创建一个字符串,然后追加它。完整的解决方案。

$(document).ready(function(){
    $("td").toggle(
        function(){
            var current = $("input[name=prices]:checked").val();
            $(this).html("<img src='images/1.gif'/>");
            var html = "<br><span class = 'newticket' id = 'null'>";
            htnl += "1 x ";
            if(current == 'full'){ 
                html +="full price ticket.";
            }
           html +=" Seat: " + $(this).attr("id");
            $(".summary").append($(this).attr("id"));
            if(current == 'full'){
                 html +=" Price: £10"
            }
            html += "</span>";
            $(".summary") .append(html);   
        },
        function(){
            $(this).html("<img src='images/a.gif'/>");
            $(".summary span.newticket").remove();
    });
});