2013-12-05 6 views
1

У меня есть Jqgrid с несколькими встроенными строками ряда. Мне нужно добавить правило редактирования для сетки.jqgrid inline edit row validation

У меня есть два столбца: Requested Qty (значение уже присутствует) и Approved Qty (которое мне нужно ввести в режиме редактирования). В режиме редактирования введенное значение утвержденного количества должно быть меньше/равно Запрошенному количеству.

Как я могу получить значение другого столбца в правиле редактирования? Как я могу выполнить проверку строк для сравнения других значений столбцов?

ответ

1

В вашей save row функции мыши, вы можете проверить значение одной ячейки по сравнению с другим:

$("#yourSaveButtonID").click(function (event) { 
    // get the current row's ID 
    var rowID = $("#yourGridID").jqGrid('getGridParam', 'selrow'); 

    // get the Approved Qty value 
    var cell_approvedQty = $("#yourGridID #" + rowID + "_approved_qty_column_name").val(); 

    // get the Requested Qty value 
    var cell_requestedQty = $("#yourGridID #" + rowID + "_requested_qty_column_name").val(); 

    // compare them 
    if (cell_approvedQty > cell_requestedQty) { 
     alert("Approved Qty must be less than or equal to Requested Qty"); 
     event.preventDefault(); 
    } 
}); 

Вы должны изменить _approved_qty_column_name и _requested_qty_column_name ваших конкретных имен столбцов. Не забудьте сохранить ведущий _ - это требуется для этого селектора.

+0

getCell возвращает содержимое HTML, а не значение. Пожалуйста, помогите –

+0

@kalyanasundaramv Я только что обновил свой ответ. Я изменил способ, которым мы получаем значение этих ячеек, поскольку они являются элементами 'input', с текстом внутри. – FastTrack