Frage

Ich habe diesen Link, in dem Bemühen, zu implementieren AJAX anmelden, auf meiner Seite:

<%= Ajax.ActionLink("Log On", "LogOn", "Account", new AjaxOptions {
    UpdateTargetId = "lll",
    Confirm = "blah"}) %>

Es gibt eine div mit id lll in der Nähe. Wenn ich auf den Link klicken, ich die blah Bestätigung erhalten (nur für Debug-Zwecke hinzugefügt, um das Verhalten ohne sie ist es das gleiche), aber dann passiert nichts. Kein Wunsch jemals erreicht den Server (weil ich einen Haltepunkt auf der LogOn Aktionsmethode habe). Das ist in Chrome und IE8. In FF3 öffnet es die Anmelde Ansicht aber als Seite, ist es nicht es durch AJAX herunterladen.

Alle Ideen, was falsch sein könnte?

War es hilfreich?

Lösung

Das Problem war, dass der Ajax-Aktionslink eine POST-Anforderung standardmäßig macht, und es wurde auf die anderen LogOn Verfahren gerichtet ist (die Annahme von POST) und das ist, warum ich nicht den Haltepunkt auch schlagen war, wurde sie scheitern, weil die notwendig POST-Daten wurden nicht gesendet werden. Hinzufügen Httpmethod auf den Aktionslink regelte es:

<%= Ajax.ActionLink("Log On", "LogOn", "Account", new AjaxOptions {
    UpdateTargetId = "lll",
    Confirm = "blah",
    HttpMethod = "Get"}) %>

Andere Tipps

Es klingt wie es einige Javascript-Fehler auf der Seite ist das Javascript verursacht eingefügt, um die AJAX-Anforderung zu verarbeiten, nicht zu schießen. Haben Sie sich in FireBug auf Seite laden, um es zu sehen, ob alle Ihre Javascript korrekt geladen? Außerdem machen Sie Ihre Versionen der Microsoft JavaScript-Bibliotheken der Version von MVC übereinstimmen, die Sie verwenden? Ich erinnere mich, mindestens einmal in der Progression der Versionen, die ich manuell musste meine Versionen von Microsoft JavaScript-Bibliotheken in meinem Projekt aktualisieren. Wenn Ihr Projekt durch mehrere Versionen von MVC existiert hat, würde ich die neuen Bibliotheken vorschlägt Aufspüren (ein neues Projekt erstellen und kopieren Sie sie in Ihrem alten oder das Projekt-Archiv öffnen im Verzeichnis installieren und sie von Hand extrahiert) und deren Installation .

Bitte benutzen Sie Ajax-Client-Skripte im Kopfbereich gehören:

  • MicrosoftMvcAjax.js
  • MicrosoftAjax.js
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top