我想使用Ext.ComponentQuery.query()
来查询包含某个名称路径的按钮名称。
假设我有4个按钮,名称声明为'edit_btn','add_btn','add2_btn'和'edit2_btn'
然后我使用查询。
Ext.ComponentQuery.query("button[name='*edit*']");
我应该''edit_btn''和''edit2_btn''按钮。
Ext.ComponentQuery.query("button[name='*add*']");
我应该''add_btn''和'add2_btn'按钮。
或者我可以在Ext.ComponentQuery.query()
命令中使用正则表达式?
如果可以,如何使用它?
答案 0 :(得分:10)
没有实施。我查看了源代码,并且只实现了相等运算符。 Hovewer很容易扩展它(请参阅ComponentQuery.html文件中的filterByAttribute
),但您必须从源代码复制所有代码,因为它实现为单例。
另一种方法是选择具有name属性并稍后过滤的按钮,例如:
Ext.Array.filter(
Ext.ComponentQuery.query('button[name]'),
function(c){ return /^add/.test(c.name); }
)