2017-06-02 55 views
1

我有一个jQuery DataTables(最新下载),我试图在底部的分页控件旁边显示一个加载动画。它应该很容易与下面的代码的一部分工作:jQuery Prepend to DataTables分页

$("#table_main_paginate").css("width", "50%"); 
$("#table_main_paginate").prepend($("<div> jjjj </div>")); 

上面的代码后的数据表已经初始化,CSSwidth确确实工作。但第二行代码不起作用。我的JavaScript文件在加载其他JavaScript文件后加载,上面的代码位于documentReady函数中。

那么发生了什么?

谢谢!

+0

分享您的HTML –

+0

感谢。但它非常大。基本上,var mainTable = $('#table_main')。DataTable({....});然后上面的代码。 – IrfanClemson

+1

尝试'setTimeout(函数(){//你的代码},2000)'看看它是否有效 –

回答

0

试试这个:

setTimeout(function(){ 
    $("#table_main_paginate").css("width", "50%"); 
    $("#table_main_paginate").prepend($("<div> jjjj </div>")); 
},2000); 

但是,有时jQuery插件需要一些时间来初始化完全

+0

是的,这可以工作,但超时值为2000;在500的情况下它似乎没有。另外,prepend在第一个分页事件之后不起作用 - 大概是因为这是服务器端,表被重新绘制。我会尝试修复它,但可能会继续显示分页下方的div。谢谢@Mahesh! – IrfanClemson

+1

@Meengla欢迎您!如果是服务器端,那么你可以使用''dataSrc“:function(){}'为你的数据表调用回调函数ajax在ajax请求完成后在每个页面上添加这段代码 –

+0

你可以查看我最近的回答,看看dataSrc '作品[这里](https://stackoverflow.com/questions/44332041/jquery-datatable-setting-column-design-and-value-in-success-callback/44332310#44332310) –