Событие jqGrid formatCell не запускается - PullRequest
1 голос
/ 18 июля 2011

По какой-то причине (неизвестно мне) событие 'formatCell' не срабатывает (предупреждающее сообщение не отображается).см. код ниже:

$("#jqgrid").jqGrid({
            datatype: "json",

            colNames: ['CurrecncyID', 'Currency', 'Value', 'Calculated', 'Value', '%', 'Calculated'],
            colModel: [
                        { name: 'CurrecncyID', index: 'CurrecncyID', hidden: true, width: 40 },
                        { name: 'CurrencyName', index: 'CurrencyName', width: 150 },
                        { name: 'FullPrice', index: 'FullPrice', width: 100, editrules: { custom: true, custom_func: priceCheck }, editable: true, align: 'right', formatter: priceFormatter },
                        { name: 'CalcFullPrice', index: 'CalcFullPrice', width: 100, align: 'right', formatter: priceFormatter },
                        { name: 'ActualPrice', index: 'ActualPrice', width: 100, editrules: { custom: true, custom_func: priceCheck }, editable: true, align: 'right', formatter: priceFormatter },
                        { name: 'Precent', index: 'Precent', width: 100, align: 'right', formatter: 'integer', formatoptions: { prefix: "% "} },
                        { name: 'CalcActualPrice', index: 'CalcActualPrice', width: 100, align: 'right', formatter: priceFormatter },
                    ],
            onSelectRow: function (id) {
                if (id && id !== lastsel) {
                    jQuery('#jqgrid').restoreRow(lastsel);
                    jQuery('#jqgrid').editRow(id, true);
                    lastsel = id;
                }
            },
            formatCell: function (rowid, cellname, value, iRow, iCol) {
                alert("before edit");
            },
            jsonReader: {
                repeatitems: false
            },
            rowNum: 20,
            rowList: [10, 20, 30],
            pager: '#jqpager',
            sortname: 'CurrecncyID',
            viewrecords: true,
            sortorder: "desc",
            caption: "Prices List",
            autowidth: true,
            height: "100%",
            loadtext: "Loading...",
            editurl: "/handlers/myurl.ashx"
        });`

1 Ответ

1 голос
/ 19 июля 2011

В jqGrid используются три основных режима редактирования . Событие formatCell является частью режима редактирования ячейки . Он не будет срабатывать в случае использования editRow и restoreRow являются частью встроенного режима редактирования Вероятно, вам нужно использовать настраиваемый редактируемый элемент в случае использования встроенного режима редактирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...