Я пытаюсь сделать работу ajax с помощью вызова getJSON(). Когда я перехожу в/Home/GetWeather, я возвращаю данные Json в браузере. Однако вызов jQuery не работает. Есть идеи? Когда я поставил точку останова на предупреждение («Привет»), он никогда не попадал. В firebug Я не вижу никакого вызова ajax. Есть идеи?MVC3 jQuery getJSON не вызывает вызов
$(document).ready(function() {
$("#Button1").click(function() {
$.getJSON("/Home/GetWeather", null, function(data) {
alert("Hello");
});
});
});
Код контроллера
public class HomeController : Controller
{
//
// GET: /Home/
public ActionResult Index()
{
return View();
}
public JsonResult GetWeather()
{
List<Weather> weather = new List<Weather>();
// populate weather with data
return Json(weather, JsonRequestBehavior.AllowGet);
}
}
Вид:
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<title>Index</title>
<script src="../../Scripts/jquery-1.5.1.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-1.5.1-vsdoc.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#Button1").click(function() {
$.getJSON("/Home/GetWeather", null, function (data) { //I hit breakpoint here, but in firebug I dont see any call, nothing
alert("Hello"); // Breakpoint here doesnt hit :(
});
});
});
</script>
</head>
<body>
<input id="Button1" type="button" name="Button1" value="Get Weather" />
<div id="Weather"></div>
</body>
</html>
Любая причина, почему решение, которое я нашел был удален ???
Корректный путь к контроллеру? Может быть что-то вроде '../ Home/GetWeather'. Кроме того, вы можете удалить «null» со своего звонка – Johan
Убедитесь, что у вас нет проблем с политикой «Одинаковый исход». См. Http: // stackoverflow.com/вопросы/2538215/cross-domain-scripting-issues-jsonp –
@CharlieKilian. Он отправляет данные в диспетчер, как он может разоблачить одну и ту же политику происхождения? – gdoron