2011-10-04 16 views
5

Tengo un problema con un resultado json. Cuando se llama desde el jquery, se devuelve un archivo para ser guardado en lugar de ejecutar la función de éxito. La solicitud get jquery ocurre en la función document.ready.Controlador MVC3 que devuelve JsonFile

Cualquier ayuda sería apreciada.

public ActionResult Locations() 
    { 
     LocationsModel lm = new LocationsModel(); 
     return Json(lm.getPins(), JsonRequestBehavior.AllowGet); 
    } 

También he intentado:

public JsonResult Locations() 
    { 
     LocationsModel lm = new LocationsModel(); 
     return Json(lm.getPins(), JsonRequestBehavior.AllowGet); 
    } 

El jQuery es el siguiente:

$.ajax({ 
     type: "POST", 
     contentType: "application/json; charset=utf-8", 
     url: this.href, 
     data: "{}", 
     dataType: "json", 
     success: function (msg) { getPins_success(msg); }, 
     error: OnError 
    }); 

Gracias, Chris

Editar:

No importa que era un duh. Una vez que moví la solicitud json a otra acción en el controlador y cargué la vista, todo funcionó. Ahora estoy teniendo problemas de análisis, pero ese es otro problema todos juntos.

+2

'AllowGet' y' type: "POST" '? –

Respuesta

1

En su lugar, debe usar getJson.

Para ti sería:

$.getJSON(this.href, function (msg) { getPins_success(msg); }); 

Esto le permitirá analizar los datos de retorno como JSON.

Cuestiones relacionadas