我正在使用w2ui。我有一个带一个按钮的工具栏。此按钮具有图标图像“icon-delete”。
当我点击按钮时,我希望它将图标图像更改为“icon-add”,但我的代码不起作用。
toolbar: {
items: [{
type: 'button',
id: 'hide',
caption: 'Menü',
img: 'icon-delete'
}],
onClick: function (target, data) {
if (target == 'hide') {
this.items.img('icon-add');
}
}
}
答案 0 :(得分:5)
您可以使用toolbar.set()方法更新工具栏按钮图标。因此,在您的onClick事件中执行以下操作:
onClick: function (target, data) {
this.set(target, { icon: 'new_icon' });
}
在此处查看更多内容:http://w2ui.com/web/docs/w2toolbar.set
答案 1 :(得分:1)
我使用“icon-add”图像创建了一个隐藏按钮“show”。 单击“隐藏”按钮时,它将被隐藏,并显示“显示”按钮。
toolbar: {
name: 'toolbar',
items: [
{ type: 'button', id: 'hide', caption: 'Menü', img: 'icon-delete' },
{ type: 'button', id: 'show', hidden: 'true', caption: 'Menü', img: 'icon-add' }
],
onClick: function (target, data) {
if (target == 'hide' ) {w2ui['layout'].toggle('left', window.instant);
this.hide('hide');
this.show('show');
}
if (target == 'show' ) {w2ui['layout'].toggle('left', window.instant);
this.hide('show');
this.show('hide');
}
}
}
答案 2 :(得分:0)
我认为你错过了原始方法中的刷新线。这是一个适合我的例子。我添加了一个其他部分
if (event.target == 'hide') {
if (this.items[0].icon == 'icon-delete') {
this.items[0].icon = 'icon-add';
//do something code
} else {
this.items[0].icon = 'icon-delete';
//do something else code
}
w2ui['toolbar'].refresh('hide');
}