如何在ExtJs 5.0中通过ajax调用在更新选项卡后强制重新索引
How to force rerendeing after updating tab by ajax call in ExtJs 5.0?
我有一个带有选项卡控件的主页面:
Ext.define("Test.index.TabsController", {
extend: "Ext.app.ViewController",
alias: "controller.tabs-controller",
onTabChange: function (panel, newItem, oldItem) {
if (!newItem.html && newItem.loader) {
newItem.loader.load();
}
}
});
Ext.define("Test.index.Tabs", {
extend: "Ext.tab.Panel",
controller: "tabs-controller",
listeners: { tabchange: "onTabChange" },
items: [
{
title: "Static Tab",
html: "This is static tab",
}, {
title: "Ajax Tab",
loader: {
loadMask: true,
removeAll: true,
url: 'views/ajax.html',
contentType: "html",
scripts: true,
renderer: function (loader, response, request) {
loader.getTarget().update(response.responseText, request.scripts === true);
return true;
}
}
}
]
});
Ext.create("Test.index.Tabs", {
renderTo: Ext.get("tabs")
});
<div id="tabs"></div>
还有一个单独的资源(我尝试了静态html文件和ASP.METMVC部分视图),其中包含从外部rest(ASP.NETWebneneneba API)Web服务填充的网格:
Ext.define("Test.models.Test", {
extend: "Ext.data.Model",
fields: ["name", "updateDate"]
});
var userStore = Ext.create("Ext.data.Store", {
model: "Test.models.Test",
autoLoad: true,
autoSync: true,
proxy: {
type: "rest",
url: "http://localhost/api/test",
reader: {
type: "json"
}
},
});
Ext.create("Ext.grid.Panel", {
renderTo: Ext.get("container"),
store: userStore,
columns: [
{
text: "ID", dataIndex: "id"
}, {
text: "Name", dataIndex: "name"
}
]
});
<div id="container"></div>
它工作但不正常:
- 当我选择第二个选项卡时,什么也没发生
- 我选择后面的第一个选项卡
- 然后再次选择第二个选项卡,现在网格可见
如何在更新后立即强制重新报价?
感谢@Luiguis,我找到了调用updateLayout()
:的位置
renderer: function (loader, response, request) {
var callback = function () {
loader.getTarget().updateLayout();
};
loader.getTarget().update(response.responseText,
request.scripts === true,
callback);
return true;
}
相关文章:
- 按照选项卡索引的顺序循环一个jQuery选择
- 如何将ng选项的索引作为angularJs中的值传递给模型
- 我想将数组的索引附加到
中,其中选择选项是数组的索引 - 在 jquery 选项卡中查找 span 标记并返回该索引
- 嵌套在表单中的引导下拉菜单:输入时选项卡索引中断
- 如何使用原始选择选项的值更新引导选择的数据原始索引
- 两个不同部分的选项卡索引
- AngularJS ng选项获取索引
- 在网页上切换选项卡ui的最佳方式,z索引与显示
- 辅助功能键盘专用选项卡到z索引“;返回顶部”;
- 获取选择组中选择选项的索引
- 在 JQuery UI 选项卡中解析选定的面板索引时出错
- 使用 jQuery,查找所有选择并将索引值追加为选项
- 使用 Jquery 比较每个数组索引的输入文本数组控件和选择选项数组控件的值
- 在多选下拉jquery中获取最近选择的选项的索引
- 在 Firefox 中,当选择具有位置和 z 索引时,为什么更改事件不会在选项卡上触发
- 多个选定的索引查询(选择选项菜单)出现问题
- 为简单数组提供带有 ng 选项的模型索引
- 如何获取上一个/下一个非禁用选项的索引(相对于所选选项)
- Javascript/jQuery - 基于<选项>的变量索引制作数组