将jquery inArray转换为extjs等价物

时间:2011-03-11 02:53:04

标签: jquery extjs

extjs是否包含与inArray等效的方法?我检查了API但没有找到任何结果!

这是需要紧急转换的jquery片段:

if ($.inArray(checkbox.inputValue, values) >= 0)

其中values是数组。

感谢,

4 个答案:

答案 0 :(得分:5)

Ext JS有Array.indexOf,它与不幸命名的jQuery.inArray完全相同:

if(values.indexOf(yourValue) !== -1)

答案 1 :(得分:2)

Ext.js似乎没有此功能。见http://docs.sencha.com/core/manual/

如果您愿意,可以将其修补:

Ext.inArray = function(value, collection) {
    return collection.indexOf(value) !== -1;
};

答案 2 :(得分:2)

ExtJS 4有Array.contains方法:

Ext.Array.contains(MyArray, MyString); // returns bool

答案 3 :(得分:0)

您需要使用Ext.Array.indexOf方法:

Ext.Array.indexOf( Array array, Object item, [Number from] ) : Number

documentation

结果代码如下所示:

if (Ext.Array.indexOf(checkbox.inputValue, values) >= 0)