我有一个带有“斑马条纹” CSS3类的表:

.zebra-stripe tr:nth-child(odd) {
    background-color: #c6e1ff;
}

.zebra-stripe tr:nth-child(even) {
    background-color: #eeeeee;
}


表格上方是一个输入字段,用户提交后将在该行的前面加上JQuery和POST。

这发生在:

function submit(id) {
  $.post(
    "URL",  // uses template toolkit 'c.uri_for' to actually add message in database
    {
      msgtype: 'some-type',
      msg: $('#some-id').val()
    },
    function (data) {
      $('#table-id').prepend(data);
    }
  );
  $('#some-id').val('');
  return false;
}


这段代码在表格顶部排了一行,所有CSS都很好用。但是,在删除任何给定的行(每行都有一个“删除”按钮)时,请使用以下JQUERY和GET:

function remove(id1,rowid) {

  // uses template toolkit 'c.uri_for' to actually remove message in database
  $.get('URL', function (data) {
    $('#' + rowid).hide();
  });

  //attempt to reapply styles
  $('#field-note-table').removeClass("zebra-stripe");
  $('#field-note-table').addClass("zebra-stripe");

  return false;
}


不重新应用CSS(破坏斑马条纹)。删除该行后,如何重新应用CSS?

最佳答案

仅调用hide会使您的行不显示。假设您的斑马条纹CSS基于奇/偶为每行应用不同的颜色,即使隐藏行也将包含在该条纹中。

如果隐藏后不需要该行,请改用remove;那么该行将不再包含在该条带中:

$.get('URL', function (data) {
    $('#' + rowid).remove();
});


否则,您可能必须使用JS进行选择性条带化。

关于jquery - jQuery在GET请求后重新应用斑马条纹,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17112790/

10-12 06:48