Я пытаюсь реализовать Ajax.ActionLink POST и при нажатии, он либо идет в ГЭТ контроллер или ничего не делает (когда я включаю jquery.unobrusive-ajax.js)Ajax.ActionLink не POST
Я не получаю сообщений об ошибках браузера F12 Console.
Я пробовал перемещать файл query.unobtrusive-ajax.js без везения.
Web.config имеет:
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
Ajax.ActionLink утверждение:
@Ajax.ActionLink(@item.Title, "GoogleDriveList", "GoogleDrive",
new { SelectedFolder = item.DriveId }, new AjaxOptions() { HttpMethod = "POST" })
При просмотре источника HTML:
<head>
<link href="/Content/bootstrap.css" rel="stylesheet"/>
<link href="/Content/bootstrap-datepicker3.css" rel="stylesheet"/>
<link href="/Content/site.css" rel="stylesheet"/>
<link href="/Content/jquery-ui.css" rel="stylesheet"/>
<script src="/Scripts/modernizr-2.6.2.js"></script>
<script src="/Scripts/jquery-2.1.4.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
<script src="/Scripts/bootstrap.js"></script>
<script src="/Scripts/bootstrap-datepicker.js"></script>
<script src="/Scripts/respond.js"></script>
<script src="/Scripts/jquery-ui-1.11.4.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
</head>
...navigation code
...
<form action="/GoogleDrive/GoogleDriveList" id="myFormID" method="post">
<input name="__RequestVerificationToken" type="hidden" value="xxxxxxxxx"
/>
...form stuff...
<a data-ajax="true" data-ajax-method="POST"
href="/GoogleDrive/GoogleDriveList?SelectedFolder=07BPctxxe8t9RcEpqbzYzV2x6NzA">Conf 001</a>
</form>
<script>
... Some java script not related to Ajax.ActionLink
</script>
Я попытался переименовать контроллер [HttpPost] ActionResult в GoogleDriveListPost, чтобы сделать его уникальным, и оператор Ajax.ActionLink не срабатывает при нажатии. Поэтому я прокомментировал , и он снова запускается, но только для HttpGet. Могут ли мои скрипты включать в порядок? – John
Если вы включите сценарий дважды, это не сработает. Поэтому, если вы включите сценарий в представление мастера (макета), убедитесь, что вы не включили его снова на дочернюю страницу, и если вы хотите дать вашему методу уникальное имя вы должны использовать [ActionName («NameOfYourMethod»)] –