如何通过MenuItem选项更改Dojo ComboButton标签?

时间:2012-05-20 07:21:51

标签: combobox dojo

我可以通过单击它拥有的菜单项来更改ComboButton的标签吗?我试着这样做:

var menu_item=new MenuItem({
    label:search_types_value[key].display_name,
    onClick:function(){
        search_type_button.label="hi";
    search_type_button.startup();
    }
});

var search_type_button=new ComboButton({
    id:"search_type_button",
    label:"types",
    dropDown: search_type_menu
},"search_type_button");

但是,这似乎不起作用。

1 个答案:

答案 0 :(得分:1)

乍一看,这看起来像是一个范围问题。 onClick函数中没有search_type_button。不要将onclick函数直接提供给菜单项,而是使用.connectonClick连接到要执行的函数。

var menu_item=new MenuItem({
    label:search_types_value[key].display_name,
});

var search_type_button=new ComboButton({
    id:"search_type_button",
    label:"types",
    dropDown: search_type_menu
},"search_type_button");

search_type_button.connect(menu_item, 'onClick', function() {
    var newLabel = 'hi';
    this.set('label', newLabel);
});