Heim > Backend-Entwicklung > C++ > Wie führt man effektive Ajax-Aufrufe an einen ASP.NET MVC-Controller durch?

Wie führt man effektive Ajax-Aufrufe an einen ASP.NET MVC-Controller durch?

Susan Sarandon
Freigeben: 2025-01-15 12:33:50
Original
511 Leute haben es durchsucht

How to Make Effective Ajax Calls to an ASP.NET MVC Controller?

Eine vollständige Anleitung zum Senden von Ajax-Anfragen an ASP.NET MVC-Controller mithilfe von jQuery

In diesem Artikel erfahren Sie, wie Sie mit jQuery Ajax-Anfragen an ASP.NET MVC-Controller initiieren, einschließlich der Implementierung von Controllern und Ansichten sowie der Client-Server-Kommunikation.

Controller-Bedienung

Ihr Controller sollte Aktionen für die Bearbeitung von Ajax-Anfragen definieren. Im folgenden Beispiel ist FirstAjax eine Operation, die mit Daten im JSON-Format antwortet:

<code class="language-csharp">public ActionResult FirstAjax()
{
    return Json("chamara", JsonRequestBehavior.AllowGet);
}</code>
Nach dem Login kopieren

Ansicht

Die

-Ansicht initialisiert jQuery und stellt eine Ajax-Anfrage an die FirstAjax-Aktion. Die Anfrage enthält einen Erfolgshandler, der die Antwort in einem Warnfeld anzeigt:

<code class="language-javascript">$(document).ready(function () {
    var serviceURL = '/AjaxTest/FirstAjax';

    $.ajax({
        type: "POST",
        url: serviceURL,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: successFunc,
        error: errorFunc
    });

    function successFunc(data, status) {     
        alert(data);
    }

    function errorFunc() {
        alert('error');
    }
});</code>
Nach dem Login kopieren

Verbesserungsplan

Beachten Sie, dass das Attribut data in der ursprünglichen Ajax-Anfrage Probleme verursacht, da Ihr Controller keine Parameter erwartet. Das Entfernen dieses Attributs und die Verwendung der @Url.Action-Methode lösen das Problem:

<code class="language-javascript">$.ajax({
    url: '@Url.Action("FirstAjax", "AjaxTest")',
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: successFunc,
    error: errorFunc
});</code>
Nach dem Login kopieren

Für POST-Anfragen, die Daten enthalten, müssen Sie die Controller-Aktion ändern, um die Parameter zu akzeptieren, und die Ajax-Anfrage so ändern, dass sie die Daten enthält:

<code class="language-csharp">// 控制器
[HttpPost]
public ActionResult FirstAjax(string a)
{
    return Json("chamara", JsonRequestBehavior.AllowGet);
}

// 视图
$.ajax({
    type: "POST",
    url: '@Url.Action("FirstAjax", "AjaxTest")',
    contentType: "application/json; charset=utf-8",
    data: { a: "testing" },
    dataType: "json",
    success: function() { alert('Success'); },
    error: errorFunc
});</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie führt man effektive Ajax-Aufrufe an einen ASP.NET MVC-Controller durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage