我加了一个动态添加的对象,如:控制器得到动态添加对象空视图
@Html.EditorFor(model => model.Province)
我的模型包含了省性质,但认为并没有显示在开始时的对象。我通过.show()方法使它可见。
但是,在控制器中,我总是发现省的值为空。如何使它可以像这样动态添加对象?
补充: 我的模型是这样的:
public class Location
{
[Required]
public int ID { get; set; }
[Required]
public string Name { get; set; }
public string Description { get; set; }
public string Street { get; set; }
public string City { get; set; }
[Display(Name = "State/Province")]
public string Province { get; set; }
}
控制器:
[HttpPost]
public ActionResult Create(Location location)
{
if (ModelState.IsValid)
{
db.Location.Add(location);
db.SaveChanges();
return RedirectToAction("Index");
}
}
观点:
<div class="editor-label">
@Html.LabelFor(model => model.Province)
</div>
<div class="editor-field">
<div id="province_ddl">
@Html.DropDownListFor(
x => x.Province,
Enumerable.Empty<SelectListItem>(),
"-- Select State/Province --"
)
</div>
<div id="province_tb" style="display: none">
@Html.EditorFor(model => model.Province)
</div>
@Html.ValidationMessageFor(model => model.Province)
</div>
当我使用下拉列表,它将对省权值属性。但是,如果我使文本框控件可见,它将不具有值,即在控制器中获得空值。
你是否得到每个省属性的相应输入字段?你的模型是怎样的?你的控制器动作是怎样的?他们以什么样的对象作为论点?这种情况下*动态*是什么?你需要提供更多信息。 – 2012-07-25 12:34:21