如何在 Extjs 网格中禁用删除图标
Posted
技术标签:
【中文标题】如何在 Extjs 网格中禁用删除图标【英文标题】:How to disable Delete icon in Extjs grid 【发布时间】:2019-12-26 11:03:38 【问题描述】:我有一个来自 extjs 的示例代码,该操作是我编辑、删除、复制的列的多列的一部分。我想根据另一个字段值禁用删除图标。我还有一个名为 IS_USED 的列,它返回真/假。如果 IS_USED 为真,则应禁用删除按钮。 我尝试在 action 中编写 handler,但无法正常工作。 我是 extjs 的新手,任何帮助或解决方法都是可观的。
action:
iconCls: 'x-icon-cross-on',
text: terms.del,
url: url.destroy,
useAjax: true,
confirm: terms.confirm,
handler: function(grid, record, action, domEl, response)
if ( !response.success)
test.ui.Msg.flash(response.message, test.ui.Msg.ERR);
javascript.scroll(0,0);
else
test.ui.Msg.success(response.message);
grid.getStore().reload();
【问题讨论】:
这能回答你的问题吗? How to disable action column item for a single row? 【参考方案1】:最佳做法是直接根据记录值将“禁用”属性绑定到按钮。 首先,将 viewModel:true 设置为网格。
xtype: 'grid',
//add this below
itemConfig:
viewModel:true
,
//....others props like columns, with,etc....
最后,在您的按钮中添加:
action:
iconCls: 'x-icon-cross-on',
//add this
bind:
disabled:"record.IS_USED" //the logic is placed here
,
//.....other props....
您还可以使用此技巧绑定任何其他可绑定属性,例如隐藏、文本等。
希望对你有帮助。
【讨论】:
以上是关于如何在 Extjs 网格中禁用删除图标的主要内容,如果未能解决你的问题,请参考以下文章