Url.Die Aktion setzt ein & in meiner url, wie kann ich dieses Problem lösen?
Ich will senden den Variablen itemId und entityModel der ActionResult CreateNote:
public ActionResult CreateNote(
[ModelBinder(typeof(Models.JsonModelBinder))]
NoteModel Model, string cmd, long? itemId, string modelEntity)
mit diesem javascript:
Model.meta.PostAction = Url.Action("CreateNote", new { cmd = "Save", itemId = itemId, modelEntity = modelEntity});
Jedoch die url schicken, ist
localhost:1304/Administration/blue/en-gb/Entity/CreateNote?modelEntity=Phrase&itemId=44
Will ich senden
localhost:1304/Administration/blue/en-gb/Entity/CreateNote?modelEntity=Phrase&itemId=44
Wie kann ich verhindern, dass Url.Aktion legen Sie die & vor der zweiten variable, die ich senden möchten?
InformationsquelleAutor der Frage Niek de Klein | 2012-01-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich nicht bemerkt gestern, dass Sie hatte
&
ich dachte, das war das ALSO-editor geändert hatte. Versuchen Sie, wickeln Sie IhreUrl.Action()
im@Html.Raw()
um zu verhindern, dass die Codierung der &.Oder alternativ nur
Url.Action()
die controller/action-bit, und übergeben Sie die zwei Parameter als post-Daten anstatt direkt auf die url, jQuery, sollte sort out die &'s für Sie auf diese Weise.InformationsquelleAutor der Antwort K. Bob
Ich glaube, dein problem ist mit
Model.meta.PostAction
- ist, dass die Eigenschaft einestring
?Wenn ja, dann wäre meine Vermutung, dass Sie hinzufügen, um die Seite mit:
@Model.meta.PostAction
<%:Model.meta.PostAction%>
Beide automatisch Kodieren, die Zeichenfolge für Sie.
Um es zu beheben, verwenden Sie entweder
@Html.Raw()
/<%=
(beide nicht codieren) oder diePostAction
Eigenschaft eineIHtmlString
der weiß, dass es bereits codiert:InformationsquelleAutor der Antwort Keith
Versuchen, diese auf Ihre JS
InformationsquelleAutor der Antwort Ro.