我正在寫一個非常簡單的MVC4測試頁面和不顯眼的AJAX似乎並沒有工作。當我點擊我的提交按鈕時,頁面不會被提交。簡單的MVC4不顯眼的AJAX不工作
我有一個斷點是VS,可以告訴沒有請求。
我使用的是Firefox,當我點擊提交按鈕Web控制檯顯示了這個JavaScript錯誤:
---傳遞給在第16行發生的getElementById()
空字符串
--- jquery.unobtrusive-ajax.js
我設置的AJAX選項如下:
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選項中定義)。
如果我改變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>
有任何想法嗎?
是您的Action HttpPost? –
不,它不是HttpPost。在這個階段,這很重要嗎?看來瀏覽器沒有發送請求。 –
你是對的,它甚至沒有去控制器呢。 –