我在我正在创建的整个网站中都使用了适合的表格,到目前为止,它主要是一帆风顺的,但是在将服务器端分页添加到表格时我遇到了困难。基本上我是通过 ajax 调用获取数据,当页面第一次加载时,一切都很好,footable 被正确初始化并且列在移动视图中折叠,但是当我按下下一页按钮时,新数据被添加到表中但是在移动视图中列不会折叠。见下图:
为了清楚起见,此网页上有多个可脚注的表格,上面的表格是使用 jquery.responsiveTabs 插件在选项卡控件内实现的。如果我最大化然后最小化浏览器,则可脚断点被添加到新行并且列折叠。
将新行添加到表中时,我使用的是此处的高级演示功能中提供的 ajax 演示
我的ajax请求实现如下:
$.ajax({
url: '/myurl/getdata/',
success : function(data) {
$('#despatchTbl tbody').append(data).trigger('footable_redraw');
}
});
除了通过 ID 而非元素来引用表格之外,这与 footable 文档中的代码相同。我还尝试了其他footable 触发器,例如footable_resize、footable_initialize 和一个我添加的新触发器,以在交换选项卡footable_force_resize 时解决类似问题,但没有运气,控制台也没有错误。
我的脚本按以下顺序声明:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>
<script src="/scripts/footable.js" type="text/javascript"></script>
<script src="/scripts/jquery.responsiveTabs.js" type="text/javascript"></script>
<script type="text/javascript" src="/scripts/ajaxlibs.js"></script>
在脚本声明的下方,我正在初始化footable,如下所示:
<script language="javascript">
$(function() {
$('.footable').footable()
});
</script>
我还尝试了以下内容,这些内容已成功添加到选项卡激活事件中,每次更改选项卡时都会触发。
var table = $('.footable').footable();
table.trigger('footable_resize');
但是,当我在页面初始化后的 ajax 调用之后运行它时,我在控制台中收到以下错误。
typeerror $(...).footable 不是函数
我现在对此束手无策,我真的不想在这个后期阶段放弃脚踏实地并找到替代方案。我已经在这里和谷歌上搜索了各种问题,但没有人能解决我的问题,所以任何帮助都将不胜感激!!!