2013-07-23 27 views
29

Ich benutze die folgenden, um ein Formular zu erstellen, um Bilder auf eine mobile Website hochzuladen.Wie füge ich Datenattribute zu Html.BeginForm hinzu

@using (Html.BeginForm("Form/", "Quote", FormMethod.Post, new { enctype = "multipart/form-data" })) 

Allerdings, wie es mit jQuery Mobile ist, habe ich Ajax aktiviert, so dass der Übergang zwischen den Seiten ist schön und glatt. Dies hat das Problem verursacht, dass mein Formular die Bilder nicht hochlädt, da du keine Datei-Uploads mit Ajax machen kannst. Ich muss diesem Formular das Attribut data-ajax="false" hinzufügen, damit meine Datei hochgeladen werden kann.

Wer weiß, wie ich dies tun, wie ich mehrere Variationen der versucht folgende konnte aber nicht an die Arbeit:

@using (Html.BeginForm("Form/", "Quote", FormMethod.Post, new { enctype = "multipart/form-data", "data-ajax" = "false" })) 
+0

Könnten Sie '@ data-ajax =" false "' bitte versuchen? –

+0

@AndreCalil Ich habe das als eine meiner vielen Varianten – Pete

Antwort

53

Der Trick Verwenden Sie den Unterstrich anstelle des Bindestrichs:

new { enctype = "multipart/form-data", data_ajax = "false" } 

Der Bindestrich ist nicht als Teil von aC# id erlaubt ntifier. Das MVC-Framework übersetzt den Unterstrich automatisch.

+4

ah das ist genau das, was ich gesucht habe, danke. – Pete

+1

Vielen Dank Jan! –

+0

Danke dafür - ich dachte daran, einen Weg zu finden, '_' in' -' zu übersetzen, dachte aber, ich würde zuerst schnell nach dem "richtigen" Weg suchen. Rasiermaschine, du liebst mich! – brichins

15

Sie eine weitere Überlastung verwenden können:

@using (Html.BeginForm("Form", "Quote", FormMethod.Post, new Dictionary<string, object> { { "enctype", "multipart/form-data" }, { "data-ajax", "false"} })) 
+3

+1 für den alternativen Weg – Pete

+0

versucht, während es mehr Junk {} in diesem gibt, funktioniert es großartig für Vue, wenn Sie ein ref-Attribut zu einem Formular hinzufügen müssen, da ref ist ein Schlüsselwort in C# und kann nicht für die Überladung "Objekt htmlAttributes" arbeiten. –

Verwandte Themen