数据表javascript-RoR

数据表javascript-RoR,javascript,ruby-on-rails,datatables,Javascript,Ruby On Rails,Datatables,我在更改页面时不加载datatable,但如果在刷新页面时加载了datatable: 当我第一次进入页面时 当我去看学生的时候 当他回到学生页面时 My datatable js: $(document).ready(function () { $("#alumnos_table").dataTable({ destroy: true, responsive: true, "autoWidth": true, "oLa

我在更改页面时不加载datatable,但如果在刷新页面时加载了datatable:

当我第一次进入页面时

当我去看学生的时候

当他回到学生页面时

My datatable js:

$(document).ready(function () {
    $("#alumnos_table").dataTable({
        destroy: true,
        responsive: true,
        "autoWidth": true,
        "oLanguage": {
            "sProcessing": "Procesando...",
            "sLengthMenu": "Mostrar _MENU_ registros",
            "sSearch": "",
            "sZeroRecords": "No existen datos",
            "sInfo": "Registro _START_ al _END_ de _TOTAL_ registros",
            "sInfoEmpty": "Registro 0 al 0 de 0 registros",
            "sLoadingRecords": "Cargando...",
            "sInfoFiltered": "(Filtrado de _MAX_ registros)",
            bDestroy: true,
            paging: false,
            searching: false,
            "oPaginate": {
                "sFirst": "Primero",
                "sLast": "Último",
                "sNext": "Siguiente",
                "sPrevious": "Anterior"
            },
            "oAria": {
                "sSortAscending": ": Activar para ordenar la columna de manera ascendente",
                "sSortDescending": ": Activar para ordenar la columna de manera descendente"
            }
        },
        "aoColumnDefs": [
            {"bSortable": false, "aTargets": [7]}
        ],
        bProcessing: true,
        bServerSide: true,
        "sAjaxSource": "/client/alumnos"
    });
});
我的路线:

namespace :client do
    get "index" => "index#index"
    resources :alumnos
    resources :asignaturas
    resources :carreras
  end
我的行动索引:

def index
    respond_to do |format|
      format.html
      format.json {render json: AlumnosDataTable.new(view_context)}
    end
  end

关于如何解决这个问题有什么想法吗?

如果您在应用程序中使用
turbolinks
,这可能就是原因所在

尝试替换:

$(document).ready(function () { 
   ....  
   .... 
})
与:

或者这个:

$(document).on('turbolinks:load', function() {
  ....
});

如果您在应用程序中使用的是
turbolinks
,这可能就是原因所在

尝试替换:

$(document).ready(function () { 
   ....  
   .... 
})
与:

或者这个:

$(document).on('turbolinks:load', function() {
  ....
});

上面的代码列表是一个典型的“Turbolinks”问题,您可以从项目中删除“Turbolinks”,也可以像这样加载脚本

$(document).on('turbolinks:load', function() {

});

您可以在此处查看文档。

上面的代码列表是一个典型的“Turbolinks”问题,您可以从项目中删除“Turbolinks”,也可以像这样加载脚本

$(document).on('turbolinks:load', function() {

});
您可以在这里查看文档