我在网格面板中创建了链接,因此当我单击链接时,它将在选项卡面板中打开另一个选项卡。目前,我使用onClick事件将列单元格输出渲染为 html href 。但是当渲染器方法openrender()调用另一个方法newtab()时似乎出现错误,显示错误函数newtab()找不到。可能是因为onClick事件只能调用“Ext.onReady(function(){”块之外的方法/函数?有谁知道解决方案,非常感谢任何帮助。
或者,如果您有其他方法可以达到相同的目的,也可以随时分享。谢谢。
function newtab(state,ptt,status){
tabs.add({
title: 'Order List Detail',
iconCls: 'tabs',
items: [
new Ext.Panel({
height: 40,
html: 'some html'
})
,layout: 'fit'
}).show();
}
function openrender(value, p, record){
return String.format('<a <href="#" onClick="newtab(\'{1}\',\'{2}\',\'{3}\')">{0}</a></b>',value, record.data.state, record.data.ptt, 'Open');
}
var grid = new Ext.grid.GridPanel({
frame:true,
title: 'Pending Orders',
layout: 'fit',
store: catstore,
stripeRows: true,
loadMask: true,
iconCls: 'grid',
tbar: [{
text: 'Category',
xtype: 'label'
}
],
columns: [
{header: "State Name", dataIndex: 'state', sortable: true},
{header: "PTT Name", dataIndex: 'ptt', sortable: true},
{header: "Open", dataIndex: 'openstatus', sortable: true, renderer: openrender}
]
});