2013-05-07 50 views
1

我有一個視圖,它具有通過ViewModel加載的數據,它顯示有關項目的信息。我使用Html.BeginForm()來創建表單,然後顯示頁面上的所有數據。在Html.BeginForm()中間是我的文件上傳控件。它看起來是這樣的:MVC中的文件上傳Html.BeginForm

@using (Html.BeginForm()) 
{ 
    ... //Load other form data 
    <p>1. Upload Data.</p> 
    <div class="fileUploadContainer"> 
     <input type="file" name="file" id="fileUpload"><button id="dataUpload" class="redButton">Upload</button> 
    </div> 
    ... //Load more form data 
} 

所以我的問題是,究竟是什麼上傳功能獨立工作的其他形式的,很明顯,我不能在表單中嵌入表單的最佳途徑。我在我的控制器中爲此方法創建了一個單獨的Action,它叫做UploadProjectData,常規表單提交給它自己的控制器操作。

+0

嘗試http://www.uploadify.com/可能有幫助 – Liam 2013-05-07 12:59:11

回答

0

我建議您嘗試使用客戶端JavaScript代碼來捕獲包含在輸入類型文件中的文件描述符,然後通過AJAX調用將文件傳遞到您的服務器並使用它。

檢查這對此事精彩文章進一步信息 http://www.html5rocks.com/en/tutorials/file/dndfiles/

無論如何,我會走出表單的輸入類型的文件,如果我不希望它由主形式發送事。