我正在尝试在列表中添加表单foreach项,但是当我添加表单时...数据不会被包装。表单已创建,但随后立即关闭。这就是我的foreach的样子:
@foreach (var item in Model)
{
<tr>
<td>
@using (Html.BeginForm("ReplaceEmployeeDocument", "Employee", FormMethod.Post, new {id = "replace-form", enctype = "multipart/form-data"}))
{
@Html.Hidden("doc", item)
<div id="replace-document" style="display: none; background-color: white; padding: 15px;">
<h3><u>Replace Employee Document</u></h3>
<table>
<tr>
<td style="text-align: right;">
@Html.Label("File"):
</td>
<td>
<input type='file' name='fuDocument' id='fuDocument' class="form-control" style="height: 40px;" />
</td>
</tr>
</table>
<input type="submit" value="Replace" />
</div>
}
</td>
<td>
@Html.DisplayFor(modelItem => item.Title)
</td>
<td>
@Html.DisplayFor(modelItem => item.DocumentType)
</td>
<td>
@Html.DisplayFor(modelItem => item.CreatedBy)
</td>
<td>
@Html.DisplayFor(modelItem => item.CreatedDate)
</td>
@Html.HiddenFor(modelItem => item.EmployeeNumber)
@Html.HiddenFor(modelItem => item.CompanyNumber)
<td><a href="@item.FullUrl">View</a> | <a id="replace-button">Replace</a> | @Html.ActionLink("Delete", "DeleteEmployeeDocument", new { fileName = item.FullUrl, employeeNo = item.EmployeeNumber })</td>
</tr>
}
这就是我的行动:
[HttpPost]
public ActionResult ReplaceEmployeeDocument(HttpPostedFileBase fuDocument, Models.EmployeeDocument doc)
{
}
这是渲染视图的样子:
<table id="results-table" class="table table-striped table-bordered table-condensed">
<thead>
<tr>
<th>
<u>Title</u>
</th>
<th>
<u>Document Type</u>
</th>
<th>
<u>Created By</u>
</th>
<th>
<u>Created Date</u>
</th>
<th style="width: 180px;"></th>
</tr>
</thead>
<tbody>
<form action="/Employee/ReplaceEmployeeDocument" enctype="multipart/form-data" id="replace-form" method="post" style="padding-top: 5px; margin-top: 0px;">
</form>
<tr>
<td>
Mark Has Same File
</td>
<td>
Green Sheet
</td>
<td>
AJOHNSON
</td>
<td>
10/24/2014 12:53:53 PM
</td>
<input data-val="true" data-val-number="The field EmployeeNumber must be a number." data-val-required="The EmployeeNumber field is required." id="item_EmployeeNumber" name="item.EmployeeNumber" type="hidden" value="3077">
<input data-val="true" data-val-number="The field CompanyNumber must be a number." data-val-required="The CompanyNumber field is required." id="item_CompanyNumber" name="item.CompanyNumber" type="hidden" value="1">
<td><a href="http://svr-corpsp1/app/employee/Employee Master Documents/3077_UPDATE.sql">View</a> | <a id="replace-button">Replace</a> | <a href="/Employee/DeleteEmployeeDocument?fileName=http%3A%2F%2Fsvr-corpsp1%2Fapp%2Femployee%2FEmployee%20Master%20Documents%2F3077_UPDATE.sql&employeeNo=3077">Delete</a></td>
</tr>
<form action="/Employee/ReplaceEmployeeDocument" enctype="multipart/form-data" id="replace-form" method="post" style="padding-top: 5px; margin-top: 0px;">
</form>
<tr>
<td id="replace-document" style="display: none;background-color: white; padding: 15px;">
<h3><u>Replace Employee Document</u></h3>
<table>
<tbody><tr>
<td style="text-align: right;">
<label for="File">File</label>:
</td>
<td>
<input type="file" name="fuDocument" id="fuDocument" class="form-control" style="height: 40px;">
</td>
</tr>
</tbody></table>
<input type="submit" value="Replace">
</td>
<td>
Another Test
</td>
<td>
Other
</td>
<td>
AJOHNSON
</td>
<td>
10/24/2014 3:24:18 PM
</td>
<input data-val="true" data-val-number="The field EmployeeNumber must be a number." data-val-required="The EmployeeNumber field is required." id="item_EmployeeNumber" name="item.EmployeeNumber" type="hidden" value="3077">
<input data-val="true" data-val-number="The field CompanyNumber must be a number." data-val-required="The CompanyNumber field is required." id="item_CompanyNumber" name="item.CompanyNumber" type="hidden" value="1">
<td><a href="http://svr-corpsp1/app/employee/Employee Master Documents/3077_1920x1200-Crimson.jpg">View</a> | <a id="replace-button">Replace</a> | <a href="/Employee/DeleteEmployeeDocument?fileName=http%3A%2F%2Fsvr-corpsp1%2Fapp%2Femployee%2FEmployee%20Master%20Documents%2F3077_1920x1200-Crimson.jpg&employeeNo=3077">Delete</a></td>
</tr>
</tbody>
</table>
最新消息:
@foreach (var item in Model)
{
<tr>
<td style="display: none;">
@using (Html.BeginForm("ReplaceEmployeeDocument", "Employee", FormMethod.Post, new {@class = "replace-form", enctype = "multipart/form-data"}))
{
@Html.Hidden("doc", (EmployeeDocument) item)
<div id="replace-document" style="display: none; background-color: white; padding: 15px;">
<h3><u>Replace Employee Document</u></h3>
<table>
<tr>
<td style="text-align: right;">
@Html.Label("File"):
</td>
<td>
<input type='file' name='fuDocument' id='fuDocument' class="form-control" style="height: 40px;" />
</td>
</tr>
</table>
<input type="submit" value="Replace" />
</div>
}
</td>
<td>
@Html.DisplayFor(modelItem => item.Title)
</td>
<td>
@Html.DisplayFor(modelItem => item.DocumentType)
</td>
<td>
@Html.DisplayFor(modelItem => item.CreatedBy)
</td>
<td>
@Html.DisplayFor(modelItem => item.CreatedDate)
</td>
@Html.HiddenFor(modelItem => item.EmployeeNumber)
@Html.HiddenFor(modelItem => item.CompanyNumber)
<td><a href="@item.FullUrl">View</a> | <a id="replace-button">Replace</a> | @Html.ActionLink("Delete", "DeleteEmployeeDocument", new { fileName = item.FullUrl, employeeNo = item.EmployeeNumber })</td>
</tr>
}