je le suivant où je suis en train d'envoyer la liste/tableau à la méthode du contrôleur MVC:Envoyer liste/tableau en tant que paramètre avec jQuery getJSON
var id = [];
var inStock = [];
$table.find('tbody>tr').each(function() {
id.push($(this).find('.id').text());
inStock.push($(this).find('.stocked').attr('checked'));
});
var params = {};
params.ids = id;
params.stocked = inStock;
$.getJSON('MyApp/UpdateStockList', params, function() {
alert('finished');
});
dans mon contoller:
public JsonResult UpdateStockList(int[] ids, bool[] stocked) { }
à la fois les paramètres sont nuls.
Notez que si je change les params à des éléments simples
params.ids = 1;
params.stocked = true;
public JsonResult UpdateStockList(int ids, bool stocked) { }
il fonctionne ok, donc je ne pense pas que ce soit un problème de routage.
génie, merci! Il semble qu'il y ait un bug dans getJson avec 1.4.2, voir http://forum.jquery.com/topic/getjson-breaks-with-1-4-2-when-parameter-argument-is-an-array – fearofawhackplanet
Ce n'est pas un bug. C'est un changement de rupture par rapport à la version précédente. C'est pourquoi ils ont introduit le paramètre 'traditional'. –
je t'aime, l'homme – heisenberg