Это мой первый проект MVC. Я создаю приложение Bing Map (которое загружает несколько кликов на карте).Как отправить JsonResult из контроллера в View и получить к нему доступ с помощью jQuery?
Вот мой индекс ActionResult
public ActionResult Index(string Id)
{
// Here is the code to populate the DataSet using Id parameter
DataTable dtReport = ds.Tables[0];
List<MapPoint> points = new List<MapPoint>();
int index = 1;
foreach (DataRow r in dt.Rows)
{
points.Add(GetPointInfo(r, false));
index++;
}
//return the list as JSON
return Json(points, JsonRequestBehavior.AllowGet);
}
Моя проблема, когда я иду в индексном, я вижу это Json отформатированные данные и исчезает карта. Я предполагаю, что это происходит, потому что я возвращаю JsonResult в Index ActionResult.
Есть ли способ сохранить карту в представлении и все еще иметь возможность передать JsonResult в представление индекса и получить к нему доступ с помощью jQuery?
Вы используете jQuery для отправки ajax-запроса на сервер и использования ответа с помощью javascript? Что-то вроде [этого] (http://www.cleancode.co.nz/blog/739/ajax-aspnet-mvc-3). Если да, можете ли вы разместить javascript на стороне клиента? –
В настоящее время я использую другой метод, называемый GetLocations в контроллере, и используя что-то вроде этого: $ .getJSON ("/ GetLocations /", stripNull ({Id: '090'}), функция (данные) {код здесь}); но моя проблема заключается в том, что мне нужно получить доступ к параметру URL. Итак, я хочу достичь всего, используя, по возможности, представление Index. – Learner
Передайте json-результат в 'view data', и вы можете использовать' view data result' в javascript. убедитесь, что ваше действие возвращает вид, а не json. –