JQuery Load mit MVC3 @ Url.Action gibt Parameter nicht korrekt weiter

8

Ich habe festgestellt, dass mir @Url.Action("myAction", new { param1 = 123, param2 = 456}) eine ungültige URL Home/myAction?param1=123&param2=456 liefert.

Ich versuche es zu tun

%Vor%

Aber nur param1 wird in der Aktionsmethode ausgefüllt.

Wenn ich das & entferne und es nur & mache, dann funktioniert es, aber das Ersetzen eines Strings ist super hacky.

%Vor%

Fehle ich hier etwas?

BEARBEITEN: Pro Anfrage schließe ich einige meiner Beispiel-Apps ein. (Sie können eine neue MVC-App erstellen und diese schnell hinzufügen und selbst sehen)

Controller:

%Vor%

AjaxTest-Ansicht:

%Vor%

Indexansicht:

%Vor%     
Nathan Koop 12.10.2012, 19:53
quelle

2 Antworten

14

Standardmäßig wird jeder Inhalt (der nicht IHtmlString ist), der mit einem @ -Block ausgegeben wird, automatisch von Razor HTML-kodiert (siehe hierzu Razor Einführung Artikel Html Encoding Abschnitt)

Die Url.Action gibt nur eine einfache string zurück, deshalb wird & kodiert.

Verwenden Sie Html.Raw , wenn Sie die Codierung nicht möchten:

%Vor%     
nemesv 12.10.2012, 20:12
quelle
4

Sie können die URL auch auf diese Weise erstellen.

%Vor%     
Shyju 12.10.2012 20:05
quelle

Tags und Links