删除附加数据 - jquery

时间:2012-03-27 11:32:48

标签: jquery

select: function (event, ui) {

        var staffItem = new Object();


        staffItem.StaffId = ui.item.id;
        staffItem.Name = ui.item.name;
        staffItem.Photo = ui.item.image;
        staffItem.Email=ui.item.email;
        staffItem.Mobile=ui.item.mobile;          

              var data = "<div><table width='100%'><tr><td align='right' ><div class='close16'/></td></tr></table><div><table><tr><td rowspan='4' width='50px;'><img src='" + staffItem.Photo + "' Width='48' Height='48'  /></td><td>" + staffItem.Name + " ( " + staffItem.StaffId + " )</td></tr><tr><td><table cellpadding='0' cellspacing='0'><tr><td>" + staffItem.Email + "</td><td>&nbsp;|&nbsp;</td><td>" + staffItem.Mobile + "</td></tr></table></td></tr></table></td></tr></table></div></div> ";
                $('#staffInCharge').css('background-color','#FFAA55');
                $('#staffInCharge').append(data);

我正在使用此代码将人员详细信息附加到div中,并在close16类中使用图像文件(用于删除数据的十字标记),如果单击十字标记,应删除附加数据,怎么能我这样做,而且当我追加新数据时,它逐个追加(现有数据的下方)我需要将它附加到右侧,我该怎么做呢。

4 个答案:

答案 0 :(得分:1)

var dataObj = $(data)
$('#staffInCharge').append(dataObj);

$("#crossMark").bind('click', function() { dataObj.remove();});

对于多个条目,请参阅小提琴:

http://jsfiddle.net/QMx8y/9/

答案 1 :(得分:1)

要删除数据,您可以执行以下操作:

$(document).on('click', '.close16', function() {
    $(this).parentsUntil('div').remove();
});

至于附加数据,它取决于你的DOM是什么样的,以及你想要实现的目标。您可能需要查看insertAfterinsertBefore,以准确控制数据的添加位置。使事物看起来“向右侧”可能更多地是您要插入的元素的样式问题,而不是您插入它们的DOM中的样式。

.append会将内容添加到容器的底部,只要考虑您的标记即可。这是否与物理上显示在容器中先前项目下面的项目相同,取决​​于这些元素的属性。

如果您在另一个DIV之后添加DIV,那么默认情况下它将显示在前者之下,但这与元素的显示模式有关,而与其在代码中的位置有关。 Example

如果DIV元素具有不同的显示模式,例如inline-block,它们将出现在前一个元素的右侧。 Example。请注意,JavaScript不会更改。

但是,如果你想用float: left;来定位你的DIV,你可能会发现你想要插入不在容器底部但在clear: both - 元素之前的元素,总是在底部。然后你必须使用像insertBefore这样的东西。 Example

哪种确切方法最适合您取决于标记和样式的很多方面。说你想要“向右侧”的东西并不能为我们提供足够的信息来帮助你。

答案 2 :(得分:1)

你可以这样做: - 这只是一般性的想法: -

jQuery("#remove").removeAttr("disabled");
jQuery('#mainField').find('tr:last').prev().remove();
jQuery('#mainField').find('tr:last').prev().remove();

处理班级

答案 3 :(得分:1)

要删除数据,您可以这样做: 给出一些类或ID的div 如果你隐藏点击某些链接,如

<div class='hideme'></div>
<a id='clickme'>clickme</a>

$(document).ready(function(){
  $('#clickme').click(function(){
    $('.hideme').css({'display':'none'});
  })
})