Web配置:MVC Ajax.BeginForm InsertionMode
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
的JavaScript引用的文件:
<script src="@Url.Content("~/Scripts/jquery-1.7.2.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js") type="text/javascript"></script>
CSHTML頁:
@using (Ajax.BeginForm(new AjaxOptions { UpdateTargetId = "result", LoadingElementId = "progress", InsertionMode = InsertionMode.Replace }))
{
<div class="form">
<div class="emailBox">
<input id="email" name="email">
<input type="submit" value="Join Us">
</div>
<div id="result">
</div>
<div id="progress" style="display:none;">
<img src= "@Url.Content("~/Content/images/Ajax-loader-bar.gif") ">
</div>
</div>
}
Controller.cs:
[HttpPost]
public string Index(SignUpModel model)
{
return "Hello";
}
當我點擊SUBMIT按鈕時,原因是什麼,整個頁面被替換爲一個白色的頁面,上面寫着「hello」。我的印象是,Ajax.BeginForm將取代DIV RESULT的內容。
我在做什麼錯?
另外,LoadingElementID
當AJAX調用將返回其值時它會自動隱藏嗎?
=========================
ANSWER
螢火蟲表明,所引用的JS文件中的一個沒有被發現。
我修好後,它所有的按預期工作。
謝謝你們
我有Jquery和Jquery.unobtrusive-ajax。我在哪裏可以找到Jquery.unobstrusive文件? –
已更新的問題,說明我有文件。我在哪裏可以找到任何缺少的文件? –
對不起,我在混合jquery-unobtrusive-validation文件。但這不是必需的。 –