Я пытаюсь начать работу с вызовами ASP.NET MVC Ajax.
Контроллер:
public class AjaxTestController : Controller
{
//
// GET: /AjaxTest/
public ActionResult Index()
{
return View();
}
public ActionResult FirstAjax()
{
return Json("chamara", JsonRequestBehavior.AllowGet);
}
}
Вид:
<head runat="server">
<title>FirstAjax</title>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
var serviceURL = '/AjaxTest/FirstAjax';
$.ajax({
type: "POST",
url: serviceURL,
data: param = "",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: successFunc,
error: errorFunc
});
function successFunc(data, status) {
alert(data);
}
function errorFunc() {
alert('error');
}
});
</script>
</head>
Мне просто нужно распечатать предупреждение с помощью метода контроллера, возвращающего данные. Над кодом просто напечатайте "chamara" на моем представлении. Предупреждение не срабатывает.
UPDATE
Я изменил свой контроллер, как показано ниже, и начал работать. У меня нет четкого представления, почему он работает сейчас. Кто-нибудь, пожалуйста, объясните. Параметр "a" не связан, я добавил его, потому что я не могу добавить два метода с тем же именем метода и параметрами. Я думаю, что это может быть не решение, а его работающий
public class AjaxTestController : Controller
{
//
// GET: /AjaxTest/
[HttpGet]
public ActionResult FirstAjax()
{
return View();
}
[HttpPost]
public ActionResult FirstAjax(string a)
{
return Json("chamara", JsonRequestBehavior.AllowGet);
}
}