我正在开发一个使用jQuery转发器的程序,目的是能够为个人添加多个活动。
我已经得到了这个工作正常,但是,如果没有选择任何值,我的下拉列表会将null传回给控制器,并且我不确定将其作为隐藏字段传递到何处。如果我选择一个值传回并保存了值,但如果我不编辑该值,则当前值不会持续存在,并且我不确定如何将其隐藏。
我已经发布了一些代码,我可以看到其中的一些代码是如此长,所以请告知我是否还应该添加其他内容。
模型。
public class CON_studentInfoVM
{
public int id { get; set; }
[DisplayName("Image")]
public string image { get; set; }
[DisplayName("StudentID")]
public string StudentID { get; set; }
[DisplayName("First Name")]
public string firstName { get; set; }
[DisplayName("Middle Name")]
public string middleName { get; set; }
[DisplayName("Last Name")]
public string lastName { get; set; }
public List<actVm> act { get; set; }
}
public class actVm
{
public Nullable<int> id { get; set; }
public string studentID { get; set; }
public string textinput { get; set; }
public string untypedinput { get; set; }
public int checkboxinputSuper { get; set; }
public string selectinput { get; set; }
public string activities { get; set; }
//Dropdown is activities
public List<string> multipleselectinput { get; set; }
}
控制器
//此处的断点显示下拉列表为空
public async Task<ActionResult> Edit(CON_studentVM con_studentinfo )
{
}
视图的一部分
@using (Html.BeginForm("Create", "Student", null, FormMethod.Post, new { enctype = "multipart/form-data", @data_ajax = "false" }))
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
@Html.ValidationSummary(true)
<div id="tab_1_4" class="tab-pane fade">
<div class="portlet-body form">
<div class="form-body">
<div class="form-group">
<div class="repeater">
<div class="mt-repeater form-horizontal">
<h3 class="mt-repeater-title"> </h3>
<div data-repeater-list="act">
@foreach (var item in Model.act)
{
<div data-repeater-item class="mt-repeater-item">
<div class="">
<label></label>
<div class="col-md-10">
@Html.DropDownList("activities", null, item.activities, new {@id="activities",@name="activities", @class = "form-control " })
</div>
</div>
<hr />
<div class="mt-repeater-input">
<label> Study</label>
<br />
<input type="checkbox" name="checkboxinputprefes" value="1" @Html.Raw(item.checkboxinputprefes>0?"checked":"") class="form-control" />
</div>
<div class="mt-repeater-input">
<a href="javascript:;" data-repeater-delete="" class="btn btn-warning mt-repeater-delete">
<i class="fa fa-close"></i> Delete
</a>
</div>
</div>
}
</div>
</div>
<a href="javascript:;" data-repeater-create="" class="btn btn-primary mt-repeater-add">
<i class="fa fa-plus"></i> Add
</a>
</div>
</div>
</div>
</div>
</div>