createPanel: function () {
    var me = this; 
    var mainPanel = Ext.create('Ext.Panel', {
        fullscreen: true,
        cls: 'main-bg',
        items: [{
            renderTo: 'my-demo',
            xtype: 'panel',
            width: 850,
            height: 500,
            html: me.rowRender(data, 3, 2, 40, 30)
        }]
    });
},
test:function()
{
alert(1);
},
rowRender: function (data, rows, columns, width, height) {
    var me = this;
    var tempCount = 0;
    for (var i = 0; i < data.length; i++) {
        tempCount++;
        str += '<input onclick="里面如何调用test方法" type="text"  style="background-color:' + data[i].color + ';border-bottom:' + data[i].bottomLine + ' solid black;border-top:' + data[i].topLine + ' solid black;border-left:' + data[i].bottomLine + ' solid black;border-right:' + data[i].rightLine + ' solid black; width:' + width + 'px;height:' + height + 'px;" value=' + data[i].value + '></input>';
    
    }
    return str;
}

解决方案 »

  1.   

    显示有3个回复 我怎么知道能看到2楼。 csdn搞什么呀
      

  2.   

    标红的onclick 调用一个页面级的function
    在页面级的function里找到包含了createPanel,test,rowRender等函数的那个对象实例,比如function ptest()
    {
      var o= 对象实例;
      o.test();   //通过实例调用
    }
      

  3.   

    在那個對象的afterrender事件里通過this.getEl().on('事件名','函數式');
    绑定事件
      

  4.   

    或者试试 
    listeners: {
        render: function(c){
          c.body.on('click', function(){...});
        }
      }
      

  5.   

    这个不好用,写在外边click事件触发不起来,并且在初始化的时候就会被动执行
      

  6.   

    html页面是没有方法的。 直接引用的大量的js文件。 所以不可以写页面级的方法,必须是在子的js文件中处理。