我正在尝试通过控制器中的存储过程将模型传递回控制器以进行大量更新。需要传递回控制器的两个关键值是从视图中选择的下拉菜单和日历日期。模型中有一些字段可以存储信息,但是我无法弄清楚如何填充模型中的值。
这是当前代码:
<div>
<a href="#" id="addNew">Add New</a>
</div>
<p>
PlantArea: @Html.DropDownList("PlantArea", " ")
EntryDate: @Html.TextBox("EntryDate", @DateTime.Now.ToShortDateString(), new { id = "Calendar", @class = "datepicker" })
<input type="submit" value="Load Daily Entries" />
<br /> <br />
</p>
<table id="dataTable" border="0" cellpadding="0" cellspacing="0">
<tr>
<th>Employee Id</th>
<th>Employee Name</th>
<th>Status Reason</th>
<th>HR Comment</th>
</tr>
@if (Model != null && Model.Count > 0)
{
int j = 0;
foreach (var i in Model)
{
<tr style="border:1px solid black">
<td>@Html.TextBoxFor(a => a[j].EmployeeId)</td>
<td>@Html.TextBoxFor(a => a[j].Preferred_Name)</td>
<td>@Html.TextBoxFor(a => a[j].Entry_Code, new { @Value = ViewBag.DefaultAttendanceCode })</td>
<td>@Html.TextBoxFor(a => a[j].HR_Comment)</td>
<td>>@Html.TextBoxFor(a => a[j].EntryDate, new { @Value = EntryDate})</td>
<td>>@Html.TextBoxFor(a => a[j].Entry_Code, new { @Value = PlantArea })</td>
<td>
@if (j > 0)
{
<a href="#" class="remove">Remove</a>
}
</td>
</tr>
您可以将模型绑定更改为紧密耦合。表示您可以将该控件绑定到模型值像@ Html.TextBoxFor(m => m.entrydate)@ Html.DropDownListFor(m => m.plantarea)
否则,将两个隐藏的文本框放在UI中,并在这些隐藏的字段中填充下拉列表和日期值。然后使用隐藏字段获取值