DataTables在同一页面上没有初始化两次?

时间:2016-04-13 08:39:26

标签: javascript jquery twitter-bootstrap datatables

我试图在两个不同的模态上使用两次DataTables,我遇到的问题是打开DataTable的第二个模式是不是被初始化了?

流程的CodePen -

http://codepen.io/kieronapple/pen/WwzrgP

它应该如何运作 -

  1. 第一个模态首先打开DataTables初始化
  2. 按第一个模态上的管理,第二个模态打开。但是DataTables没有初始化?
  3. 初始化两个表的功能

    function getValidTags(type){
        var ruleID = $('.ruleID').val();
    
        switch(type){
            case "validTags":
              var table = $('.valid-tags').DataTable({
                  "ajax": {
                      "url": "/ajax/getValidTags.php",
                      "type": "POST",
                      "data": {
                        ruleID: ruleID,
                        type: type
                      },
                  },
                  "columnDefs": [{
                     "targets": 2,
                     "render": function(data, type, full, meta){
                                return '<button class="btn btn-default btn-sm manageAutofixes" type="button">Manage</button> <button class="btn btn-danger btn-sm deleteValid">Delete</button>';          
                     }
                  }],
                  destroy: true     
              });
            break;
    
            case "autofixes":
            alert('hi');
              var table2 = $('.autofixes-table').DataTable({
                  "ajax": {
                      "url": "/ajax/getValidTags.php",
                      "type": "POST",
                      "data": {
                        ruleID: ruleID,
                        type: type
                      },
                  },
                  "columnDefs": [{
                     "targets": 2,
                     "render": function(data, type, full, meta){
                                return '<button class="btn btn-default btn-sm manageAutofixes" type="button">Manage</button>';          
                     }
                  }],
                  destroy: true     
              });
            break;
        }
    }
    

    首先采取行动的功能DataTable

    $('input[class="val_list"]').click(function() {
        $('.ruleID').val($('#mongoid').val());          
        $('.validation-list-modal').modal('show');      
        $('.validTagsTable').empty();
        if ($('.val_list').is(':checked')) {
          $(".tags, .tm-input, .new-tag, .allow_null_div, #null-label, .auto-fix").show();
        }
        getValidTags('validTags');
    });
    

    操作第二个DataTable的功能

    $('.valid-tags').on('click', '.manageAutofixes', function(){
        $('.autofixes-modal').modal('show');   
        getValidTags('autofixes');           
    })
    

0 个答案:

没有答案