Ich habe eine Action So:OnClick funktioniert nicht auf Preventt in Action -ASP.NET MVC
@Html.ActionLink("Add New", MVC.Admin.Purchase.Create(), new { @class = "btn btn-success", onclick = "return checkDefaultStore();" })
html Ergebnis über Code ist:
<a class="btn btn-sm btn-success" href="/Admin/Purchase/Create" onclick="return checkDefaultStore();">Add New</a>
ich vor, um neue Seite gehen wollen überprüfe etwas und wenn das nicht existiert, gehe auf neue Seite.
Dazu erstelle ich diese JQuery-Funktion:
function checkDefaultStore(e) {
var url = $('#ajax-info').data('checkdefaultstore');
$.ajax({
url: url,
data: {},
type: 'POST',
success: function (data) {
if (data.result)
return true;
else
return false;
},
error: function (response) {
}
});
}
Aktion Methode, die false
oder true
definiert zurück.
[HttpPost]
public virtual JsonResult HasDefault()
{
bool result = _storeService.HasDefault();
if (result)
return Json(new { result = true },JsonRequestBehavior.AllowGet);
else
return Json(new { result = false, message = "default store does not exists" },JsonRequestBehavior.AllowGet);
}
Wenn Sie auf den Link klicken, ruft er die Funktion auf und ruft die neue Seite auf.
Sie eine Überlastung von 'Action mit()' Das ist ading sowohl die Klassennamen und die JavaScript-Funktion als Routenparameter. Du hast deine Funktion nie getroffen. –
Wenn selbst wenn es täte, würde es nicht die Umleitung (seine bereits von der Zeit, die Sie Wert Ajax-Funktion gibt aufgetreten verhindern. Was wollen Sie eigentlich erreichen? –
@StephenMuecke wenn Klick auf den Link, Funktion seine Forderung und ActionMethod nennen, aber nicht laufen 'Erfolg function' oder' Fehler function' in ajax –