在AJAX之后设置Bootstrap表的样式

时间:2018-11-11 07:19:59

标签: jquery css bootstrap-4

我正在使用WordPress / WooCommerce构建的网站。我没有在WordPress-StackExchange上问这个问题,因为这个问题与WordPress- / WooCommerce-part无关。

该网站上有一些<table>,需要样式设置。因此,我添加了这个jQuery代码段,以将.table类添加到所有表(found here)中。

jQuery(document).ready(function(){
  // Make all tables into Bootstrap-tables
  jQuery( 'main' ).find( 'table' ).each( function() {
      jQuery( this ).addClass( 'table' );
    }
  );
});

但是...在其中一个页面(购物车)上,有一个AJAX请求可以更新购物车。当它返回新信息时,该表将不再具有类(或样式)。

当一切都从Bootstrap交付时,我不希望手动设置该表的样式。

我考虑了以下两个选项:

  • A)在我的脚本中添加一些内容,以检查AJAX请求或类似内容?如果是这样,-我该怎么做?

  • B)做某事,因此Bootstrap样式适用于所有<table>个元素(而不只是<table class='table'>个元素?如果是,-我该怎么做?更改bootstrap.min .css似乎是个坏主意。

他们俩看上去都很笨拙/笨拙。我是否缺少更好的方法?

1 个答案:

答案 0 :(得分:2)

您可以使用ajaxComplete

每个ajax请求完成后,这项工作就会完成。

$( document ).ajaxComplete(function( event, xhr, settings ) {
      $("table").addClass("table");
});