Sígueme en Facebook

1 de diciembre de 2010
0 comentarios

MVC2 :Solicitar datos desde jQuery a Accion

22:33
JSon es un formato ligero de intercambio de datos propio de Javascript así que viene al pelo para el envio de información entre el cliente y el servidor dentro de Asp.Net Mvc 2. A continuación posteo código "calentito y funcionando" para realizar llamadas asíncronas desde las funciones jQuery del navegador hasta la accion del controlador que se encargue de la persistencia y que esta le devuelva los datos solicitados.


Fichero jQuery


/* *   Solicita áreas al controlador y continua la ejecucion */ function RecuperarArea() {         // Llamo a la acción del servidor como si de un SW se tratara        $.post("/VisorMapa/DameArea/",             // Envío a la acción el id del usuario            { id: id.toString() },             function (result) {                 // Inserto los elementos del string devueltos en una objeto javascript                var resultParseado = $.parseJSON(result);                 for (i in resultParseado) {                     // recogo una fila y la meto en temporal                    var listaTemporal = new Array();                     listaTemporal[0] = resultParseado[i].latitud;                     listaTemporal[1] = resultParseado[i].longitud;                     // asigno fila temporal en una fila del array bidimensional                    listaCoordenadas[i] = listaTemporal;                 }                 // Continua para pintar las coordenadas                PintarPorCoordenadas(listaCoordenadas, divVista);             }             ); }




Controlador


// Recibe la solicitud de área y la serializa        public ActionResult DameArea(string id)         {             List<Coordenada> coordenadasMock = new List<Coordenada>();             //TODO : sustituir por la llamada real a persistencia            coordenadasMock = new List<Coordenada>{ new Coordenada(38.39494286693514, -0.4397347569465637),                                                     new Coordenada(38.39474286693514, -0.4395347569465637),                                                     new Coordenada(38.39489286693514, -0.4395347569465637)};             JavaScriptSerializer jss = new JavaScriptSerializer();             string listaSerializadaJson = jss.Serialize(coordenadasMock);             return Content(listaSerializadaJson);         }







0 comentarios:

Publicar un comentario

 
Toggle Footer
Top