comunicar javascript con un controller ASP.Net MVC3
-
martes, 21 de agosto de 2012 18:39
Tengo la siguiente situación, estoy dando de alta los datos de una factura en un formulario, lo hago con Html.BeginForm y en el controller los obtengo con un FormCollection, hasta ahí no tengo problemas, el problema viene cuando necesito agregar los productos de la factura, como pueden ser "n" productos, se me ocurrió usar append de jquery para agregar los campos de captura del producto, y mandarlos vía post al controller, pero el problema es ¿como cachar estos datos al controller? o ¿conocen alguna otra manera de hacer esto? estoy usando C#, ASP.Net MVC3
Gracias.
Todas las respuestas
-
miércoles, 22 de agosto de 2012 19:24
Muy buenas Emiliano_AL
Bueno si tu pregunta concreta es enviar datos a un cotrolador mediante JavaScript, lo puedes hacer de la siguiente manera:
$.post('@Url.Accion("AccionResult", "Controller")', { parametro1 : valor1, parametro2 : valor2, ... })
Saludos
Juan Gómez
-
miércoles, 22 de agosto de 2012 20:28
y ¿como los podría leer del lado del controlador? ¿sería una cadena?
tengo este código que manda los datos al controllador, la pregunta es, como puedo leerler desde la acción del controller? y en el controlador los recibo en una string que contiene el json?
function enviarProductos() { $.ajax({ url: Accion("AccionResult", "Controller"), type: "POST", dataType: "json", data: { concepts: addConcepts() }, success: function () { } }); }gracias
-
miércoles, 22 de agosto de 2012 20:37
y ¿como los podría leer del lado del controlador? ¿sería una cadena?
tengo este código que manda los datos al controllador, la pregunta es, como puedo leerler desde la acción del controller? y en el controlador los recibo en una string que contiene el json?
function enviarProductos() { $.ajax({ url: Accion("AccionResult", "Controller"), type: "POST", dataType: "json", data: { concepts: addConcepts() }, success: function () { } }); }gracias
Buenas tardes
Emiliano_Al, entonces seria algo asi: $.post('@Url.Accion("AccionResult", "Controller")', { parametro1 : valor1, parametro2 : valor2, ... }, function(resp){
var datos = jQuery.parseJSON(resp);
.....
})
entonces con la varibale datos podes obtiene lo que retorna el controlador, el controlador lo que te deberia de devolver es un Content con una cadea de tipo Json...
Saludos
Juan Gómez
- Marcado como respuesta Emiliano_AL jueves, 23 de agosto de 2012 5:23
-
jueves, 23 de agosto de 2012 5:23Gracias, me funciono. saludos

