Ho una griglia Kendo modificabile in cui posso modificare una cella e la griglia aggiunge il segno rosso nell'angolo in alto a sinistra della cella.mantiene manualmente un indicatore di cella sporco sul paging nella griglia di Kendo
Vado a un'altra pagina e poi torno alla pagina in cui è avvenuta la modifica e il segno rosso è scomparso, ma il valore aggiunto nella cella rimane. Ho visto una risposta a questo sul sito di Kendo dove è stato consigliato che: "Per mostrare la" bandiera sporca "ogni volta che la griglia viene rimbalzata, dovrà scorrere tutti i modelli, controllare tutti i campi se modificati e visibili in le celle della griglia. "
Sto assumendo che questo dovrà essere fatto sull'evento DataBound()
della griglia (sembra sparare quando cambio pagina) dove applicherò manualmente la classe k-dirty-cell
alla cella ma posso ' t capire come fare questo lavoro in codice. Ogni pensiero è molto apprezzato.
$(function() {
$("#grid").kendoGrid({
height: 550,
scrollable: true,
sortable: true,
filterable: true,
resizable: true,
reorderable: true,
groupable: false,
editable: true, // enable editing
columns: [
//REMOVED TO SHORTEN EXAMPLE
],
toolbar: [{name: "save", text: "Save All Records"}, "cancel"],
dataSource: {
schema: {
data: "d",
total: function(data) {
return data.d.length;
},
model: {
//REMOVED TO SHORTEN EXAMPLE
}
}
},
batch: true,
pageSize: 10,
transport: {
read: {
},
parameterMap: function (data, operation) {
if (operation == "read") {
//WEB SERVICE CALLS REMOVED... YOU GET THE POINT
}
else if(operation == "update") {
//WEB SERVICE CALLS REMOVED... YOU GET THE POINT
}
}
},
},
selectable: true,
pageable: true,
dataBound: function()
{
//THIS IS FIRED WHEN I CHANGE PAGEs BUT
//NOT SURE WHAT CODE GOES HERE TO
//REAPPLY DIRTY CELL MARKER
};
Bella idea, tuttavia non riesce nel mio caso, perché il [titolo-dati] è dato dal titolo della colonna (nel mio caso Categoria titolo) e il campo e.field è il nome della proprietà del modello (nel mio caso Categorie). Ci penserò su e forse con alcune modifiche potrebbe funzionare. –
Ok, due modifiche: 1) utilizzare th [campo dati] per evitare problemi nel mio commento precedente e 2) utilizzare $ ("# griglia"). Find ('. K-edit-cell'). Parent() 'tr') dei dati ('uid.'); per identificare la riga uid perché quando si usa editorTemplate come editor di celle, e.items [0] .uid; è sbagliato –