Я пишу очень простую тестовую страницу MVC4 и ненавязчивый Ajax, похоже, не работает. Когда я нажимаю кнопку отправки, страница не отправляется.Простой MVC4 ненавязчивый ajax не работает
У меня есть точка останова ВС и может сказать, что нет запроса.
Я использую Firefox, и когда я нажимаю кнопку отправки веб-консоль показывает эту ошибку JavaScript:.
--- пустая строка передается getElementById()
Что происходит на линии 16 в
--- jquery.unobtrusive-ajax.js
I Опции настройки Аякса следующим образом:
AjaxOptions ajaxOpts = new AjaxOptions { UpdateTargetId = "officeList", Confirm = "Are you sure?", Url = Url.Action("GetOfficeData") };
Вот мой AjaxForm:
@using (Ajax.BeginForm("GetOfficeData", ajaxOpts))
{
<div>
@Html.DropDownList("orgList", new SelectList(Model.Organizations, "ORGID", "ORGNAME"));
<button type="submit" id="btnSubmit">Submit</button>
</div>
}
я получаю «Вы уверены, что приглашение», когда я нажимаю кнопку отправки (как определено в АЯКС опций).
Если изменить Ajax.BeginForm на:
@using (Html.BeginForm())
...
Тогда есть запрос, мои контрольные точки попасть, и там нет JS ошибки.
Я использовал NuGet, чтобы получить последнюю версию как JQuery и ненавязчивым-Ajax. Вот мой сценарий теги просмотреть исходный код (все из них - в порядке убывания):
<script src="/Scripts/jquery-2.0.3.js"></script>
<script src="/Scripts/DataTables-1.9.4/media/js/jquery.dataTables.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
<script src="/Scripts/modernizr-2.5.3.js"></script>
Вот форма, которая визуализируется:
<form action="/Selectee/GetOfficeData" data-ajax="true" data-ajax-confirm="Are you sure?" data-ajax-mode="replace" data-ajax-update="#officeList" data-ajax-url="/Selectee/GetOfficeData" id="form0" method="post">
<div>
/*--my drop down .....
<br />
<button type="submit" id="btnSubmit">Submit</button>
</div>
</form>
Есть идеи?
Является ли ваше действие HttpPost? –
Нет, это не HttpPost. Это важно на данном этапе? Кажется, что браузер не отправляет запрос. –
Вы правы, он даже не добирается до контроллера. –