jQuery EasyUI Data Grid -Создание пользовательских представлений

В разных ситуациях вам может потребоваться применить более гибкий макет для таблицы данных. Для пользователей хорошим выбором является Card View. Этот инструмент позволяет быстро извлекать и отображать данные в таблице данных. В заголовке таблицы данных можно сортировать данные простым щелчком по заголовкам столбцов. В этом руководстве будет показано, как создать пользовательское представление Card View.

Создание представления Card View

Наследование от представления datagrid по умолчанию — хороший способ создания пользовательских представлений. Мы собираемся создать Card View, чтобы отображать некоторую информацию для каждой строки.

    var cardview = $.extend({}, $.fn.datagrid.defaults.view, {
        renderRow: function(target, fields, frozen, rowIndex, rowData){
            var cc = [];
            cc.push('<td colspan=' + fields.length + ' style="padding:10px 5px;border:0;">');
            if (!frozen){
                var aa = rowData.itemid.split('-');
                var img = 'shirt' + aa[1] + '.gif';
                cc.push('<img src="images/index.html' + img + '" style="width:150px;float:left">');
                cc.push('<div style="float:left;margin-left:20px;">');
                for(var i=0; i<fields.length; i++){
                    var copts = $(target).datagrid('getColumnOption', fields[i]);
                    cc.push('<p><span class="c-label">' + copts.title + ':</span> ' + rowData[fields[i]] + '</p>');
                }
                cc.push('</div>');
            }
            cc.push('</td>');
            return cc.join('');
        }
    });

Создание DataGrid

Теперь мы используем это представление для создания datagrid.

    <table id="tt" style="width:500px;height:400px"
            title="DataGrid - CardView" singleSelect="true" fitColumns="true" remoteSort="false"
            url="datagrid8_getdata.php" pagination="true" sortOrder="desc" sortName="itemid">
        <thead>
            <tr>
                <th field="itemid" width="80" sortable="true">Item ID</th>
                <th field="listprice" width="80" sortable="true">List Price</th>
                <th field="unitcost" width="80" sortable="true">Unit Cost</th>
                <th field="attr1" width="150" sortable="true">Attribute</th>
                <th field="status" width="60" sortable="true">Status</th>
            </tr>
        </thead>
    </table>    
    $('#tt').datagrid({
        view: cardview
    });

Обратите внимание, что мы задаём свойство view, и его значение — наше представление card view.

Скачать примеры jQuery EasyUI

jeasyui-datagrid-datagrid16.zip

Другие расширения