web-dev-qa-db-de.com

Implementiere einen Ajax-Aufruf mit den Tags data- *

Ich versuche, einen Ajax-Aufruf mit den Tags data- * zu implementieren, wie unter jquery-ajax-unauffällig beschrieben.

Ich weiß, dass ich eine Javascript-Funktion mit $ .ajax () verwenden kann, aber ich möchte mit den Tags data-ajax experimentieren.

Ich habe diesen Code in der cshtml-Datei ausprobiert

<a class="btn btn-primary" data-ajax-url="/Home/AjaxSample" data-ajax="true" data-ajax-success="AjaxSuccess" data-ajax-failure="AjaxError" data-ajax-method="GET">Ajax</a>

// other code...

function AjaxSuccess() { alert('AjaxSuccess'); }
function AjaxError() { alert('AjaxError'); }

Der Browser zeigt die Schaltfläche natürlich an, aber es passiert nichts, wenn ich darauf klicke. Ich kann keinen Fehler im Browser-Debugger entdecken. Nichts passiert anscheinend.

Intellisense zeigt die Tags data-ajax und Freunde nicht an. Habe ich vergessen, etwas hinzuzufügen?

Gibt es vollständige Arbeitsbeispiele?

15
Tonyc

Die Antwort aus den Kommentaren (da niemand sie hinzugefügt hat):

<script src="~/lib/jquery-ajax-unobtrusive/jquery.unobtrusive-ajax.j‌​s"></script>
<!-- the ~ is to symbolize your project's wwwroot folder

Fügen Sie das obige zu Ihrem Master-Layout mit allen anderen Skripten hinzu (standardmäßig _Layout.cshtml).

Was bedeutet dies, ist die unauffällige jQuery-Datei "ajax" in allen Ihren Seiten, sodass das Hauptskript, das die gesamte Arbeit erledigt, enthalten ist.

Vergewissern Sie sich vorher, dass Sie das Paket Microsoft.Jquery.Unobtrusive.Ajax installiert haben.

1
Solver