0

我无法删除在第一次单击切换时创建并在第二次单击切换时删除的跨度。

$(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();
});
});

如果我单击表值,则会添加跨度,但是如果我再次单击表值,则不会删除跨度。

任何帮助,将不胜感激。

4

1 回答 1

0

您不应该附加未闭合的标签创建一个字符串然后附加它。完整的解决方案。

$(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();
    });

});
于 2013-02-28T18:53:02.377 回答