【发布时间】:2015-10-22 21:34:36
【问题描述】:
我的父视图中有一个下拉列表,当我选择一个值时,我想保存该值并在我单击部分视图中的按钮时使用它。目前,如果我单击局部视图中的按钮,它将没有父视图的值。但是,如果我将下拉列表移动到部分视图,一切正常,但我想将它保留在我的父视图中。
父视图(这是下拉列表所在的位置)
<div class="btn-toolbar">
<div class="btn-group">
<button type="button" class="btn btn-primary" id="FetchProcessId">Fetch Process Id</button>
</div>
</div>
<div class="col-md-3" style="@displayAdminLead">
<div class="dropdown div-inline">
@{
var envlist = new List<SelectListItem>()
{
new SelectListItem() {Value = "OAK", Text = "OAK"},
new SelectListItem() {Value = "QA", Text = "QA"},
new SelectListItem() {Value = "PROD", Text = "PROD"}
};
}
@Html.DropDownListFor(m => m.EnvironmentName, envlist, "Environment", new {@class = "form-control"})
</div>
</div>
<div style="overflow: auto">
@using (Html.BeginForm())
{
<div id="FetchProcessIdDiv" style="">
@Html.Action("FetchProcessId", Model)
</div>
}
</div>
局部视图
<table class="table table-hover">
<tbody>
<tr>
<td>System Name:</td>
<td>
@Html.DropDownListFor(m => m.FetchProcessIdModel.SystemName, new SelectList(Model.FetchProcessIdModel.DropDownOptions, "valueId", "value"))
</td>
<td rowspan="2">@Html.TextAreaFor(m => m.FetchProcessIdModel.Message, 12, 50, null)</td>
</tr>
<tr>
<td>Deliverable Id:</td>
<td>@Html.TextBoxFor(m => m.FetchProcessIdModel.DeliverableId)</td>
</tr>
</tbody>
</table>
<input type="submit" name="submit" class="btn btn-default" value="Fetch Process Id" />
父模型
public class ParentModel
{
public string EnvironmentName { get; set; }
}
控制器
[HttpPost]
public ActionResult ParentClass(string submit, ParentModel model)
{
//omit
var envName = model.EnvironmentName;
//I am not seeing a value for model.EnvironmentName at this point
}
【问题讨论】:
-
只要下拉菜单与提交按钮的形式相同,它应该可以工作。发布您的父视图代码,包括表单和加载部分的位置。
标签: c# asp.net asp.net-mvc asp.net-mvc-4