【发布时间】:2016-05-05 11:44:17
【问题描述】:
当我使用 ajax 将表单数据发布到控制器时,使用剑道上传时我无法获取文件。我使用了 IEnumerable 但我只能获取日期值并且文件为空。我可以知道如何使它工作吗?谢谢。 (我使用 ajax 是因为我需要调用 onsuccess 事件)
//这里是视图中的表单控件
<div class="editForm">
@using (Html.BeginForm("UpdateReportFix", "Defect", FormMethod.Post, new { id = "form" }))
{
@Html.HiddenFor(model => model.DefectFixID)
<div>
@Html.Label("Report Date")
</div>
<div>
@(Html.Kendo().DatePickerFor(model => model.ReportDate)
.Name("ReportDate")
.Value(DateTime.Now).Format("dd/MM/yyyy")
.HtmlAttributes(new { @class = "EditFormField" })
)
@Html.ValidationMessageFor(model => model.ReportDate)
</div>
<div>
@Html.Label("Photos")
<br />
<span class="PhotosMessage">System Allow 2 Pictures</span>
</div>
<div class="k-content">
@(Html.Kendo().Upload()
.Name("files") <-----i cannot get this value in controller
)
</div>
<br />
<div class="col-md-12 tFIx no-padding">
@(Html.Kendo().Button().Name("Cancel").Content("Cancel").SpriteCssClass("k-icon k-i-close"))
@(Html.Kendo().Button().Name("submit").Content("Submit").SpriteCssClass("k-icon k-i-tick"))
</div>
}
//脚本
$('form').submit(function (e) {
e.preventDefault();
var frm = $('#form');
$.ajax({
url: '@Url.Action("UpdateReportFix")',
type: 'POST',
data: frm.serialize(),
beforeSend: function () {
},
onsuccess: function () { },
success: function (result) { },
error: function () { }
});
});
【问题讨论】:
标签: kendo-ui kendo-asp.net-mvc