【问题标题】:Create a function return in component (grid) Extjs 4.1在组件(网格)Extjs 4.1 中创建函数返回
【发布时间】:2023-03-15 16:55:01
【问题描述】:

我有一个网格面板,我在里面做了一个函数

myFunction: function(variable){ 
    grid.getStore().each(function(item) {
        if (item.get('value') == variable) {
             alert('run'); // running
             return true; // but not return true
        }
    });
    return false;
}

但是当我使用时

alert(grid.myFunction('abc')); // always return false Although alert('run'); running

如何解决这个问题,谢谢

【问题讨论】:

    标签: extjs extjs4.1


    【解决方案1】:

    您只在 each 函数内部返回 true。这将使您脱离内部函数,但不会从外部函数返回 true。为了得到你想要的,你可以使用你在each之外设置的变量,然后在最后返回:

    myFunction: function(variable){
        var found = false;
        grid.getStore().each(function(item) {
            if (item.get('value') == variable) {
                alert('run');
                found = true;
                return false;
            }
        });
        return found;
    }
    

    还要注意,从store.each 返回 false 会中止迭代,这是您在找到记录后想要做的,所以我也在那里添加了它。在此处查看文档:http://docs.sencha.com/extjs/4.2.1/#!/api/Ext.data.Store-method-each

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-20
      • 2013-08-19
      • 2013-11-25
      • 2012-11-04
      • 2017-12-18
      • 1970-01-01
      相关资源
      最近更新 更多