首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在fnAjaxReload / Ajax.Reload / __reload上未触发绘图

在fnAjaxReload / Ajax.Reload / __reload上未触发绘图
EN

Stack Overflow用户
提问于 2014-07-17 08:39:53
回答 1查看 331关注 0票数 2

我只是有个好奇的问题,当我重新加载我的表时,抽签事件并不总是被触发。

这是我的桌子:

代码语言:javascript
运行
复制
mCommissionTable = $("#CommissionTable").dataTable({ "bJQueryUI": false, "sDom": 'lfrtip', "columns": [ { "data": "CommissionId" }, { "data": "Description" }, { "data": "CommissionTypeDisplayName" }, { "data": "DivisionCode" }, { "data": "EmployeeName" }, { "data": "EmployeeNumber" }, { "data": "PeriodFrom" }, { "data": "PeriodTill" }, { "data": "ApprovalStatusDisplayName" }, { "data": "StatusDisplayName" }, { "data": "Comment" } ] });

这是我的刷新:

代码语言:javascript
运行
复制
function onButtonClickA() { mCommissionTable.fnReloadAjax("GridCommunication.aspx?do=GetCommission" + mFilter, RefreshSelectedRows); }

下面是RefreshSelectedRows:

代码语言:javascript
运行
复制
function RefreshSelectedRows() { alert('fired!'); }

所以一切都很好,在我第一次点击按钮之前,表格不会被加载,每次我点击按钮,表格就会被加载。但实际上,回调(RefreshSelectedRows)并不是每次都会触发。

在DataTables.js代码中,我发现了__reload-方法,其中API一次注册回调事件,第7140行:

代码语言:javascript
运行
复制
if (callback) {
    var api = new _Api(settings);

    api.one('draw', function () {
        callback(api.ajax.json());
    });
}

当我使用Visual跟踪它并设置断点Api时,一个命令将被100%命中,因此它被注册。回调是isself (只在事件被触发时发生的情况)被随机击中。我不能复制它。就这么发生了。我按了20次按钮,15次没问题,5次没有.

我试图找到它,但据我在_fnReDraw方法中所能看到的,在这个方法中,调用了fnDraw,触发了所有的绘制事件。

所以..。窃听器?

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-28 09:45:02

找到窃听器了!这是一个旧的IE版本!

当我用IE9+开始它的时候,它就像魅力一样工作!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24798717

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档