gpt4 book ai didi

javascript - 单击 Ext.menu.Menu 中的菜单项

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:31:13 29 4
gpt4 key购买 nike

我有一个按钮,单击后将展开一个菜单项,我希望能够通过 java 脚本控制台以编程方式单击其中一个菜单项。这是我单击按钮所需的内容,但在单击 Ext.menu.Menu 时需要一些帮助

var fireButton=Ext.ComponentQuery.query('button[itemId=buttonID]')[0]; //find button id
fireButton.fireEvent('click'); //open button/submenu

var ok = Ext.ComponentQuery.query('menuitem')[0];//多余的菜单项

//如何点击菜单项??

这是我的菜单:

menuButton: new Ext.menu.Menu({
items: [
{text: 'OK', value: 'ok'},
{text: 'Next', value: 'next'},
],
listeners: {
click: 'onClickMenuButton',
}

onClickMenuButtonItem: function(menu, item){
this.makeVisible(menu, item);
},

makeVisible: function(menu, item){
var menuItem = Ext.getCmp(item.value);
menuItem.isVisible()){
menuItem.setVisible(false);
item.setIconCls('plusSign');
}),

var openMenu = Ext.ComponentQuery.query('button[itemId=buttonID]')[0];
openMenu.fireEvent('click', openMenu);
var clickMenu = Ext.ComponentQuery.query("menu")[0]
clickMenu.items.filter('text','OK').fireEvent('click'); //Don't work!

最佳答案

我希望这个 fiddle 是您正在寻找的东西 -

https://fiddle.sencha.com/#fiddle/lai

请注意,我在其中一个动态创建的项目中提供了 cls: 'test',然后我正在使用 Ext.query(".test"); 获取该项目。

您还可以使用此查询搜索菜单项 -

var item = Ext.ComponentQuery.query('menuitem{text.search( \'Item 1\' )!=-1}');
item[0].fireEvent('click')

并且菜单项必须将点击监听器注册为 -

{
text: 'Item 1' ,
iconCls: 'add16',
cls: 'test',
listeners: {
click: function(){
console.log('clicked')
}
}
}

关于javascript - 单击 Ext.menu.Menu 中的菜单项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29654630/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com