shaoen01
22 Nov 2011, 3:33 AM
Hi,
I am using a grid and added one button at the last column. My purpose for this button is to allow user to open another window after clicking on this button. However, when ido a search grid or reset my grid to display all rows, i will see a duplicate button being rendered. Under the address column, i should only see one manage button.
Any thoughts on how i can check if the button has been created and stop the renderer from creating again?
29482
{
header: 'Address',
width: 90,
renderer: function(value, metadata, record) {
//window.alert("here");
var divid="add_"+record.get("userid");
// executes after 2 seconds:
Ext.Function.defer(createGridButton, 500, this, ["Manage", divid, record,"icon-grid","Address"]);
return('<div id="' + divid + '"></div>');
}
}
//Create button in grid cell
function createGridButton(value, divid, record,iconname,buttonOwner) {
new Ext.Button({
id: divid,
itemId: divid,
text: value,
iconCls: iconname,
handler : function(btn, e) {
//E.g. add_123
var tmpUserID=divid.split("_")[1];
ManageExtWindow(buttonOwner,tmpUserID)
}
}).render(document.body, divid);
}
function ManageExtWindow(extWinType,UserID){
if(extWinType=="Address"){
PopupCenter("listing.php?Listing=Address&src=User&srcid=" + UserID,"Manage Address",900,600);
}else if(extWinType=="Telephone"){
PopupCenter("listing.php?Listing=Telephone&src=User&srcid=" + UserID,"Manage Address",900,600);
}
}
I am using a grid and added one button at the last column. My purpose for this button is to allow user to open another window after clicking on this button. However, when ido a search grid or reset my grid to display all rows, i will see a duplicate button being rendered. Under the address column, i should only see one manage button.
Any thoughts on how i can check if the button has been created and stop the renderer from creating again?
29482
{
header: 'Address',
width: 90,
renderer: function(value, metadata, record) {
//window.alert("here");
var divid="add_"+record.get("userid");
// executes after 2 seconds:
Ext.Function.defer(createGridButton, 500, this, ["Manage", divid, record,"icon-grid","Address"]);
return('<div id="' + divid + '"></div>');
}
}
//Create button in grid cell
function createGridButton(value, divid, record,iconname,buttonOwner) {
new Ext.Button({
id: divid,
itemId: divid,
text: value,
iconCls: iconname,
handler : function(btn, e) {
//E.g. add_123
var tmpUserID=divid.split("_")[1];
ManageExtWindow(buttonOwner,tmpUserID)
}
}).render(document.body, divid);
}
function ManageExtWindow(extWinType,UserID){
if(extWinType=="Address"){
PopupCenter("listing.php?Listing=Address&src=User&srcid=" + UserID,"Manage Address",900,600);
}else if(extWinType=="Telephone"){
PopupCenter("listing.php?Listing=Telephone&src=User&srcid=" + UserID,"Manage Address",900,600);
}
}