У меня есть jsgrid с двумя полями IsSelected и Value. isSelected - это логическое значение, а значение - это значение элемента. Я хочу отключить текстовое поле значения в строке в jsgrid, когда флажок не установлен, и наоборот для каждой строки. это произойдет после updateItem в контроллере в jsgrid. это мой код:
$("#jsGrid").jsGrid({
width: "100%",
filtering: false,
sorting: true,
paging: true,
autoload: true,
searching: false,
editing: true,
controller: {
loadData: function (filter) {
return $.ajax({
type: "GET",
url: "/ActionPlanItems/ItemList,
data: filter,
dataType: "JSON"
});
},
updateItem: function (item) {
return $.ajax({
type: "POST",
url: "/ActionPlanItems/EditRowSelected",
data: item,
dataType: "JSON"
});
}
},
pageSize: 10,
pageButtonCount: 5,
pageIndex: 1,
noDataContent: "No Record Found",
loadIndication: true,
loadIndicationDelay: 200,
loadMessage: "لطفا صبر نمایید ...",
loadShading: true,
editButton: true,
deleteButton: false,
fields: [
{ name: "Id", title: "id", type: "text", visible: false },
{ name: "IsSelected", title: "isSelected", type: "checkbox", sorting: false},
{ name: "Value", title: "value", type: "text",
itemTemplate: function (value) {
return '<span class="label label-warning pull-right">' + value.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,") + '</span>'
} },
{ name: "Unit", title: "unit", type: "text", editing: false },
{
type: "control", title: " edit ", sorting: false, filtering: false,
itemTemplate: function (value, item) {
return '<button class="btn bg-olive btn-flat margin" title="Update"><i class="fa fa-cogs"></i></button>';
}, onItemUpdating: function (item) {
$("#jsGrid").jsGrid("refresh");
},
onItemUpdated: function (item) {
$("#jsGrid").jsGrid("refresh");
console.log("it is updated", item.item);
$("#jsGrid").jsGrid("refresh");
}}
]
});