【发布时间】:2016-01-05 13:33:34
【问题描述】:
我有一个模态对话框,它通过 AJAX 调用加载其正文。在加载的正文中,我有 HTML 标记可以使用 jqGrid。
$.get('@Url.Action("ListPartial")',null, function(data, txtStatus, jqXHR) {
customModal('Modal header', data);
createListGrig("");
});
customModal 方法
function customModal(title, body) {
var modal = $('#modalDialog');
modal.find('h6.modal-title').html(title);
modal.find('#modalBody').html(body);
modal.modal();
}
createListGrig 方法在加载的 html 上应用 jqGrid。
问题是当我的模态出现时,网格的宽度为 0。但是当我添加 setTimeout 1 秒时,它会按预期显示。
setTimeout(function (){createListGrig("")}, 1000);
请帮我确定申请jqGrid的确切时间
【问题讨论】:
-
什么是
modal()方法?我猜这个插件应该有一个load/shown事件,如果它以某种方式异步工作(使用动画?)。顺便说一句,createListGrig()方法在做什么? -
谢谢@A.Wolff!您指出我刚刚在
shown回调中调用createListGrig("")方法的正确方式,它按预期开始工作。顺便说一句:modal()- 推特引导模式。createListGrig()用我的参数调用类似$("#list-grid").jqGrid({})的东西。 -
请随时将其添加为答案,以便将此问题标记为已解决:)
标签: javascript jquery ajax twitter-bootstrap jqgrid