J'ai une table avec les détails suivants.Supprimer les lignes de la table (en supprimant plus de lignes que celles qui sont sélectionnées)
Row_no | Contact Person | Address |
26 | Andarw | DEL |
25 | Celret | DRT |
24 | Driok | ddd |
23 | Andarw | DEL |
22 | Celret | DRT |
2 | Driok | ddd |
3 | Andarw | DEL |
4 | Celret | DRT |
5 | Driok | ddd |
Le numéro de ligne est unique. Je l'ai gardé comme unique de sorte que tout en supprimant des lignes, je viendrais à savoir quelles lignes je veux supprimer. Mais le problème est le suivant.
Si je supprime des lignes avec Row_no 25,24,23,22 - il supprime ces lignes mais il supprime également 2,3,4,5. Il se comporte bizarrement.
Voici le code que je l'utilise ...
function remove(names) {
currentrows = currentrows.filter(function (obj) {
return names.indexOf(obj.row_no) == -1;
});
}
$scope.deleteuser = function() {
//selectedRowsString is a string. its value is '25,24,23,22'
remove(selectedRowsString);
$scope.gridOptions.rowData = currentrows; //updates new rowdata to grid table
$scope.gridOptions.api.setRowData($scope.gridOptions.rowData);//updates new rowdata to grid table
selectedRows = "";//this is to reset for next deletion
selectedRowsString = ""; //this is to reset for next deletion
};
je crois que le indexOf en fonction remove (noms) est à l'origine du problème. Tout en supprimant row_no 22,23,24,25-- il supprime également 2,3,4,5 parce que 22,23,24,25 a ces valeurs dans l'index.
Je ne comprends pas exactement comment corriger cette erreur. Puis-je avoir une aide s'il vous plait.