使用第二个切换删除在第一个切换中实现的跨度

时间:2013-02-28 18:50:28

标签: javascript jquery

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

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

如果我点击表格值,则会添加范围,但如果我再次点击表格值,则不会删除范围。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分: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();
    });

});