Ich habe die zuvor gepostet jQuery/MVC Fragen und habe keine praktikable Antwort gefunden.Ajax Anruf in MVC Controller- URL Problem
Ich habe den folgenden JavaScript-Code:
$.ajax({
type: "POST",
url: '@Url.Action("Search","Controller")',
data: "{queryString:'" + searchVal + "'}",
contentType: "application/json; charset=utf-8",
dataType: "html",
success: function (data) {
alert("here" + data.d.toString());
}
});
Wenn Aufruf der URL der Post wie folgt aussieht:
NetworkError: 500 Internal Server Error - <a href="http://localhost/Web/Navigation/@Url.Action(%22Search%22,%22Chat%22)"></a>
Könnte jemand mir bitte erklären, warum sie es nicht zurückgibt wie folgt aus (die Logik dahinter) und biete mir eine gültige Lösung an. Danke im Voraus!
PS: Weitere Informationen:% 22 ist die URL-Codierung Referenz für < < „>> Charakter
Ist Ihr Javascript in einer externen JS-Datei? Oder in der cshtml Datei? –
Ich glaube, dass Sie @Url haben.Aktion ("Suchen", "Controller") in einfachen Anführungszeichen zwingt JS, sie als Zeichenfolge zu behandeln, anstatt die URL vom Routing-System aufzulösen. – dougajmcdonald
wird von chtml aufgerufen, aber es wird in eine externe Datei geschrieben. –