w ASP.NET MVC 3.0 używam Ajax.BeginFormASP.Net MVC 3.0 Ajax.BeginForm przekierowuje do strony?
i uderzania JsonResult na sukces formie jestem Wywołanie funkcji jQuery. ale z jakiegoś powodu moja forma jest przekierowanie do JsonAction
moim zdaniem
@using (Ajax.BeginForm("ActionName", "Controller", null, new AjaxOptions
{
HttpMethod = "POST",
OnSuccess = "ShowResult"
}, new { id = "myform" }))
{
// All form Fields
<input type="submit" value="Continue" class="button standard" />
}
mojego kontrolera
public JsonResult ActionName(FormCollection collection)
{
return Json(new { _status },JsonRequestBehavior.AllowGet);
}
jQuery
<script type="text/javascript">
function ShowResult(data) {
// alert("I am at ShowResult");
if (data.isRedirect) {
window.location.href = json.redirectUrl;
}
}
z jakiegoś powodu po kliknięciu przycisku Wyślij. to uruchamia JsonResult i przekierowuje stronę do host/kontroler/ActionName mam włączone mój
<script src="@Url.Content("jquery.unobtrusive-ajax.min.js")"></script>
w moim layout.cshtml
może ktoś mi powiedzieć co może być nie tak?
Znalazłem problem. Teraz muszę znaleźć rozwiązanie na przedstawienia jestem sprawdzanie mój formularz
$("#myform").validate({
submitHandler: function (form) {
// my logic goes here....
}});
Jeśli wykluczyć walidacji formularza Ajax działa zgodnie z oczekiwaniami. Ale jeśli mogę zweryfikować mojego formularza ajax następnie formularz nie działa zgodnie z oczekiwaniami Dzięki
Czy wywoływany jest twój oddzwoniony javascript? Czy sprawdziłeś przy pomocy skrzypka, czy Twój obiekt JSon jest poprawnie zwracany do przeglądarki? Co masz na myśli mówiąc dosłownie przy przekierowaniu na JsonAction *? – Jan
Mój skrypt java znajduje się na tej samej stronie. Ponieważ przekierowuje na inną stronę. JavaScript może; być wywołany. i tak mój obiekt Json jest zwracany zgodnie z oczekiwaniami. widzę wynik json na nowej przekierowanej stronie – HaBo