我有一个表格数据页面 - 它是酒店房间信息列表 我希望能够允许用户选择他们想要的房间,并指定该房间的人员 - 这基本上只是成人/儿童的下拉列表。 但是,我还想根据他们需要多少房间添加多个滴管。 我一直这样做是通过对一个动作方法进行ajax调用来返回下拉列表的局部视图,因此
@Ajax.ActionLink("[+]"
, "AddNewRoom"
, new AjaxOptions
{
HttpMethod = "GET",
InsertionMode = InsertionMode.InsertAfter,
UpdateTargetId = "rooms"
})
调用此方法:
public ActionResult AddNewRoom()
{
var model = new SelectedRoomVM();
return PartialView("~/Views/Shared/EditorTemplates/SelectedRoomVM.cshtml", model);
}
到目前为止,没有任何问题。在那之前,我尝试发回该数据,并且生成的标记不正确。
当页面加载时,单行的dropper geenerated当然正确地命名下拉列表,
Rows[0].SelectedRooms[0].Adults
但动态生成的只是名为
Adults
生成表的方式是使用editortemplates
所以沿着
行 @model hotelrowVM
....
@Html.EditorFor(m=>m.Rows) //a table row
呈现
@model roomVM
...
@Html.EditorFor(m => m.SelectedRooms) // the droppers
我已经做了一些搜索方法来正确设置模板的HtmlFieldPrefix,但我没有运气。 有人可以建议我怎么做到这一点吗?
感谢