这是我第一次尝试将用户定义的参数传递给IE9中extjs(4.0.1)中的处理函数。我有以下代码,但它引发了一个错误,指出SCRIPT438: Object doesn't support property or method 'createDelegate'
。我不确定我做错了什么。请帮忙。
Js文件:
Ext.onReady(function() {
var appendBooleanOrInsertionIndex = 0;
var myButtonHandler = function(item,a, b, arg){
alert(a + " "+ b);
};
var myButton = new Ext.Button({
id : 'myButton',
//renderTo : 'mybutton',
text : 'Save',
handler : myButtonHandler.createDelegate(this, ['Hi', 'Kart'], appendBooleanOrInsertionIndex),
scope : this
});
});
答案 0 :(得分:5)
Ext停止向Ext 4中的本机类原型添加逻辑。使用Ext.Function.bind或Ext.Function.pass。
答案 1 :(得分:0)
更正后的代码如下:
Ext.onReady(function() {
var myButtonHandler = function(a, b){//alert("-->");
alert(a + " "+ b);
};
Ext.create('Ext.panel.Panel', {
renderTo: Ext.getBody(),
width: 800,
height: 300,
layout: 'column',
title: 'Container Panel',
//html: 'parent panel',
items: [
{
xtype: 'button',
id: 'mbutton',
text : 'My Button',
handler : Ext.Function.pass(myButtonHandler, ['Hi', 'Kart!!!!'])
}
]
});
});