私は2つの剣道ファイルアップロードコントロールを持つビューを持っています(それらは異なる目的を果たすため、複数のtrueを持つ1つのコントロールにすることはできません)。2つのテキストボックスと1つのドロップダウンを持つフォームがあり、クリックすると保存ボタンがあります。入力コントロール値とユーザーが選択したファイルをアップロード コントロールから読み取り、コントローラーに ajax リクエストを行う必要があります。
@(Html.Kendo().Upload()
.Name("header")
.Multiple(false)
.HtmlAttributes(new { accept = ".pptx" }).Messages(m => m.Select("Browse"))
.Async(a => a
//.Save("UploadFile","UserSave")
.AutoUpload(false))
//.Events(e => e.Complete("UploadComplete").Select("SelectionComplete").Success("Success").Error("Error"))
)
@(Html.Kendo().Upload()
.Name("body")
.Multiple(false)
.HtmlAttributes(new { accept = ".pptx" }).Messages(m => m.Select("Browse"))
.Async(a => a
//.Save("UploadFile","UserSave")
.AutoUpload(false))
)
<button class="success" id="export">save data</button>
//on click of this button pass the data as json to controller
以下のように、このために定義されたモデルがあります
public class ReportViewModel
{
public int id { get; set; }
public string CombinationValue { get; set; }
public int type_id { get; set; }
public string type_nm { get; set; }
}
public class UploadItem
{
public HttpPostedFileBase file { get; set; }
}
public class FinalReportViewModel
{
public List<UploadItem> UploadedFiles { get; set; }
public List<ReportViewModel> Data { get; set; }
}
//controller action to be called with parameters
public void Export(FinalReportViewModel postData)
{
}
また
public void Export(List<ReportViewModel> postData, HttpPostedFileBase header,HttpPostedFileBase body)
{
}
調べたけどあまり参考にならなかった
何か助けていただければ幸いです。