¿Enviar matriz al controlador MVC a través de JSON?
stoy intentando, y estoy luchando, enviar una matriz a través de JSON a una acción del controlador MVC.
Aquí es lo que tengo y lo que he intentado ...
//Get checked records
var $checkedRecords = $(':checked'); //e.g. 3 rows selected = [input 4, input 5, input 6]
//Have tried following:
sendingVar: $checkedRecords.serializeArray(); // gives array of 0's
sendingVar: JSON.stringify($checkedRecords); // gives "{\"length\":1,\"prevObject\":{\"0\":{\"jQuery1313717591466\":1,\"jQuery1313717591653\":13},\"context\":{\"jQuery1313717591466\":1,\"jQuery1313717591653\":13},\"length\":1},\"context\":{\"jQuery1313717591466\":1,\"jQuery1313717591653\":13},\"selector\":\":checked\",\"0\":{}}"...wtf
//Post
$.post(url, { sendingVar: sendingVar }, function(data) {alert(data); });
Cómo lo hago
edit: a aquellos que sugieren enviar$checkedRecords
"tal cual" desde la línea superior, eso no funciona. Recibo una extraña excepción en algún lugar del marco jquery:
uncaught exception: [Exception... "Could not convert JavaScript argument" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: http://.../.../.../jquery-1.4.4.min.js :: <TOP_LEVEL> :: line 141" data: no]
que creo que significa que está intentando asignar un valor nulo a algo que no puede.
Edit: estoy usando MVC2 no 3
Edit2: Después de la respuesta de @ Monday-el problema se debe a cómo he creado la matriz como [input 4, input 5, input 6]
y no[4,5,6]
: ¿alguna idea de cómo puedo obtener los valores en la matriz en su lugar?
Edit3: deja de votar por duplicado cuando no lo sea. ¿Realmente leíste mi problema o leíste los problemas vinculados? Este es un problema diferent
@ Daveo:
No quiero crear un atributo personalizado sobresaliente solo para enviar una matriz desde JSON, eso es ridículo como ya hemos cubierto en esta pregunta, no es necesario.