Ik loop tegen een probleem aan bij het gebruik van Ajax.BeginForm in een ASP.NET MVC3 project. De bedoeling is dat er een loading divje getoond wordt. Echter zodra ik dat toevoeg, werkt het submitten niet meer goed. De submit zelf nog wel, maar daarna gebeurt er niets. Dus bijv. een foutmelding tonen bij foute invoer, of redirecten naar een andere pagina doet het niet, je komt gewoon weer terug in exact hetzelfde formulier.
In onderstaande voorbeeld gaat het bij mij al fout:
Controller methods:
Als ik het unobtrusive ajax script niet reference werkt het wel, maar dan doet de loading div het weer niet
In onderstaande voorbeeld gaat het bij mij al fout:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| @model string @{ ViewBag.Title = "Test"; } <h2>Test</h2> <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")"></script> @using (Ajax.BeginForm("Test", new AjaxOptions() { LoadingElementId = "loader" })) { @Html.ValidationSummary(true) <input type="submit" name="submit" value="Click" /> <div id="loader" style="display: none"> loading ... <img src="@Url.Content("~/Images/loading_big.gif")" alt="loading" /> </div> } |
Controller methods:
C#:
1
2
3
4
5
6
7
8
9
10
11
| public ActionResult Test() { return View(); } [HttpPost] public ActionResult Test(string s) { System.Threading.Thread.Sleep(2000); return RedirectToAction("Success"); } |
Als ik het unobtrusive ajax script niet reference werkt het wel, maar dan doet de loading div het weer niet
[ Voor 8% gewijzigd door Haan op 05-10-2012 11:04 ]
Kater? Eerst water, de rest komt later