Ho appena iniziato a utilizzare jqGrid e voglio eliminare le righe utilizzando un pulsante di eliminazione personalizzato. Sto usando il frammento di codice di seguito:Come eliminare righe in jqgrid
try {
var cellValue;
var id;
jQuery("#editDataGridList").jqGrid({
datatype: "local",
width: 900,
height: 270,
colNames: ['Action', 'Interview id', 'Date of observation', 'Name of enumerator'],
onSelectRow: function (id) {
debugger;
var rowData = jQuery(this).getRowData(id);
cellValue = rowData['InterviewId'];
},
colModel: [
{
name: 'actions', index: 'InterviewId', sortable: false,
formatter: function (rowId, cellval, colpos, rwdat, _act) {
return "<input type='button' id='btnid' value='delete' class='btn' onClick='deleteRecords(" + cellValue + ");' />";
}
},
{ name: 'InterviewId', index: 'InterviewId' },
{ name: 'Date', index: 'Date' },
{ name: 'NameOfEnum', index: 'NameOfEnum' }
],
multiselect: false,
caption: "Edit already entered data"
});
}
catch (e) {
alert(e.message);
}
Il codice precedente utilizza questa chiamata di funzione per passare il valore riga selezionata per l'eliminazione
function deleteRecords(rowData) {
alert(rowData);
}
Purtroppo il valore rowData è indefinito. Come posso usare la stessa struttura per cancellare le righe?
@Waaqas ... il problema è che non riesco ad accedere al rowid della riga che contiene il pulsante di cancellazione utilizzando il codice html del pulsante di ritorno sopra ... ma all'interno di onSelectRow è fattibile. – JoseLuke
anche "delrowdata" non chiama il back-end. –
scrive un metodo personalizzato, che fa entrambi i lavori, cancella la riga da ui e back-end usando ajax. –