EXTJS-Kontrollkästchen Raster löschen Schienen
-
14-11-2019 - |
Frage
Ich verwende EXTJs mit Rails ... Ich versuche, Datensätze zu löschen, die in Gitter über "Checkbox-Spalte" ausgewählt wurden ... Ich habe keine Ahnung, wie ich mit "Array" von ausgewählten Datensätzen des Gitters durch Schienen umgehen kannController ... Plzz-Führer ... Der Code auf der Löschtaste lautet wie folgt: generasacodicetagpre.
Wie kann ich in meinem Rails Controller durch "SEL" -Array in My Controller durchführen?plzz helfen
Lösung
use Ext.each
to iterate an array :
var sm = prodgrid.getSelectionModel();
delbtn.on("click", function () {
var sel = sm.getSelections();
Ext.each(sel,function(data){
/// your stuff
Ext.Ajax.request({
url: 'products/delete',
// method:'DELETE',
params: {
'prodid': data.id // the parameter
}
});
///// end
},this);
});
Andere Tipps
You cannot pass arrays into Rails controller directly. This article should help you in understanding parameter passing into rails controllers.
That said, you need to convert the array into a string. You can use a function similar to this for converting the array to string:
function array_params(arry) {
var paramvar = "";
arry.each(function(s){
paramvar = paramvar.concat("arr[]=",s,"&");});
paramvar = paramvar.replace(/&$/,"");
return paramvar;
}
and finally call:
Ext.Ajax.request({
url: 'products/delete',
// method:'DELETE',
params: {
'prodid': array_params(sel)
}
});