Я создал ссылку на панели сетки, чтобы при нажатии на ссылку она открывала еще одну вкладку на панели вкладок. В настоящее время я отображаю вывод ячейки столбца в html href с событием onClick . Но, похоже, возникла ошибка, когда метод рендерера 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}
]
});