Как установить фиксированную высоту строк независимо от данных в полях редактируемого типа 'textarea' - PullRequest
0 голосов
/ 22 мая 2019

Я использую JqGrid с JavaScript.Я хотел бы установить фиксированную высоту 30 пикселей для каждой строки таблицы, но мне не удалось это сделать

это мой код:

Я пытался использовать функцию loadComplete (в моем кодениже) и добавить CSS к конкретной сетке, но не сработало.

jQuery("#IL_DealInsiderListsGrd").jqGrid({
        datatype: "local", // or server, considr delay
        height: 250,
        data: gridsMap["DM_InsiderListData"] ? gridsMap["DM_InsiderListData"].data : [], 
        colModel:[
            {label: 'List ID', name:'listId',index:'listId', width:150, sorttype:"text", key:true},
            {label: 'Status', name: 'status',index:'status', width:150},
            {label: 'Short Description', name:'shortDesc',index:'shortDesc', width:250,
             editable: true, edittype:'text'},
            {label: 'Description Info', name:'descInfo',index:'descInfo', width:250,
             editable: true, edittype:"textarea", formatter:'', editoptions:{rows:"3", dataInit: gridTextarea}},
            {label: 'Audit Date', name:'auditDate',index:'auditDate', width:150, sorttype:"date"}
        ],
        //multiselect: true,
        pager: '#IL_DealInsiderListsGrd_Pager',
        rowNum:6,
        rowList:[6,10,20],
        cellEdit : true,
        cellsubmit : 'clientArray',
         loadComplete: function() {
                    var grid = $("#IL_DealInsiderListsGrd");
                    var ids = grid.getDataIDs();
                    for (var i = 0; i < ids.length; i++) {
                        grid.setRowData ( ids[i], false, {height: 20+i*2} );
                    }
                    //grid.setGridHeight('auto');
                },
        beforeSelectRow: function(rowid, event) {
            setRowEditable($(this), rowid, !($(this).jqGrid('getRowData', rowid).status === 'Cleansed'))
            return true;
        },
        afterSaveCell: function(rowid, cellname, value, iRow, iCol) {
            if(!value.trim()) {
                showAlert("Field is mandatory");
                $(this).jqGrid('restoreCell', iRow, iCol);
            }
            else {
                $(this).jqGrid('setCell', rowid, "auditDate", getDatetimeString());
            }
        }
    });

1 Ответ

0 голосов
/ 22 мая 2019

Попробуйте найти класс css ваших строк с помощью отладчика Chrome.

Затем установите следующее в вашем css (замените your-css-class на класс, который вы нашли):

.your-css-class {
    height: 30px;
    max-height: 30px;
    overflow: hidden;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...