Javascript 删除隐藏的值并<;br>;当替换via.html时

Javascript 删除隐藏的值并<;br>;当替换via.html时,javascript,jquery,html,Javascript,Jquery,Html,我有一个代码,允许我在单击某些“缺席者”时,通过隐藏表单将其ID添加到缺席者列表中。当我再次单击它时,“缺席者”将从缺席者列表中删除。然而,当我再次点击它时,列表似乎因为一个br而进一步扩展 在我的代码中,加上隐藏的表单值似乎没有被删除。我需要删除隐藏值,以便从列表中删除的缺席者不会记录在数据库中。我需要那个br 这样缺席者名单就可以呈现了 下面是我的代码:解决方案相当简单。将要追加和隐藏的文本包装在块级元素(div、p、li等)中,您不需要我完全同意@charlietfl,只需使用块级元素即可

我有一个代码,允许我在单击某些“缺席者”时,通过隐藏表单将其ID添加到缺席者列表中。当我再次单击它时,“缺席者”将从缺席者列表中删除。然而,当我再次点击它时,列表似乎因为一个br而进一步扩展 在我的代码中,加上隐藏的表单值似乎没有被删除。我需要删除隐藏值,以便从列表中删除的缺席者不会记录在数据库中。我需要那个br 这样缺席者名单就可以呈现了


下面是我的代码:

解决方案相当简单。将要追加和隐藏的文本包装在块级元素(div、p、li等)中,您不需要
我完全同意@charlietfl,只需使用块级元素即可。此外,使用单个隐藏输入来跟踪缺席人员,代码如下:

$(function() {
    $("td").click(function() {
        var $this = $(this);
        var user = $this.attr('id');
        var p = $('<p />').attr('user', user).text($this.text());
        var absentees = [];
        if ($('#absentees').val().length > 0) {
            absentees = $('#absentees').val().split(',')
        }
        if ($(this).hasClass('on')) {
            //console.log("Already marked absent");
            //remove from collection
            $("#collect").children('p[user="' + user + '"]').remove();
            absentees.splice(absentees.indexOf(user), 1);
        }
        else {
            //console.log(user);
            //add to collection
            $("#collect").append(p);
            absentees.push(user);
        }
        $this.toggleClass('on');
        $('#absentees').val(absentees.join(','));
    });

    $("#clicky").click(function() {
        $('td').removeClass('on');
        $("#collect").empty();
        $('#absentees').val('');
     });
});​
$(函数(){
$(“td”)。单击(函数(){
var$this=$(this);
var user=$this.attr('id');
var p=$('

').attr('user',user.text($this.text()); var缺席=[]; 如果($(“#缺席者”).val().length>0){ 缺席人数=$(“#缺席人数”).val().split(“,”) } if($(this).hasClass('on')){ //控制台日志(“已标记为不存在”); //从集合中删除 $(“#collect”).children('p[user=“”+user+“]).remove(); 缺席者。拼接(缺席者。索引of(用户),1); } 否则{ //console.log(用户); //添加到集合 $(“#收集”)。追加(p); 缺席者。推送(用户); } $this.toggleClass('on'); $(“#缺席者”).val(缺席者.加入(“,”); }); $(“#clicky”)。单击(函数(){ $('td').removeClass('on'); $(“#collect”).empty(); $(“#缺席者”).val(“”); }); });​


列表删除工作正常,但是通过隐藏表单隐藏的id仍会被发布到下一页。这一个工作正常。在使用之前,我会先尝试理解代码。新手jquery用户:D.谢谢!顺便说一句,我试图爆炸的缺席,但它总是显示“数组”。知道吗?你说的“爆炸”缺席者是什么意思?