English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Конкретный код приведен ниже:
Ext.define('AM.view.test.ReceiptList', { extend: 'Ext.grid.Panel', alias: 'widget.receiptlist', id : 'receiptlist', selModel : { selType : 'checkboxmodel', mode : 'SIMPLE', checkOnly : true, renderer : function(v,p,record) { if (record.data.XR0003 == '0') { return '<div class="x-grid-row-checker"> </div>'; }else{ return ''; } } }, listeners: { beforeselect: function(grid, record, index, eOpts) { if (record.get('XR0003')!=0) { return false; } } } });
Объяснение кода:
1. Красным цветом выделен ключевой код;
2. Код в renderer означает, что checkbox будет отображаться только при условии.
3. Код в listeners означает, что перед выбором выполняется условная проверка. Если значение не равно 0, выбранный элемент не будет выбран.
4. Вы можете комбинировать два метода по своему усмотрению.
Как уже было сказано,小编 представляет вам решение проблемы с non-selectable checkbox в Extjs gridpanel, основанное на условиях строки. Надеюсь, это поможет вам. Если у вас есть какие-либо вопросы, пожалуйста, оставьте комментарий, и я отвечу вам своевременно. В этом также хочу выразить признательность всем, кто поддерживает сайт呐喊教程!
Заявление: содержимое этой статьи взято из Интернета, авторские права принадлежат соответствующему владельцу. Контент предоставлен пользователями Интернета, загружен самостоятельно, сайт не обладает правами собственности, не был отредактирован вручную и не несет ответственности за соответствующие юридические вопросы. Если вы обнаружите подозрительное нарушение авторских прав, пожалуйста, отправьте письмо по адресу: notice#oldtoolbag.com (во время отправки письма замените # на @), чтобы сообщить о этом, и предоставьте соответствующие доказательства. При подтверждении правонарушения сайт немедленно удалят подозрительное нарушение авторских прав.