2017-09-19 40 views
-2

后,我有如何填写dropdownlistfor后

<form> 
    @Html.DropDownListFor(x => x.City, provinces, "--Select City--", new { @class = "dropdownList" }) 
    @Html.DropDownListFor(x => x.district, Enumerable.Empty<SelectListItem>(), "--Select district--") 
    <input type="submit" id="submitRegister" value="submit" /> 
</form> 

后后,我采取modalstate错误,然后我丢失区。如何在错误发帖后设置分区

+0

这似乎是级联下拉菜单(并且您没有显示任何与此相关的代码),但我建议您参考[此答案](https://stackoverflow.com/questions/33247717/how以诚保级联下拉列表选择项,后形式提交/ 33248183#33248183) –

回答

0

我明白并解决了这个问题。 我更新了控制器

 return View(model)
然后我用这种方式重新填充列表。

@{ if (Model != null)
var _id = Convert.ToInt32(Model.City);
var DistrictService = DependencyResolver.Current.GetService();
var district= DistrictService.Search(x => x.ProvinceId == _id).ToList();
List _district = new List();
foreach (var item in district)
{
_district.Add(new SelectListItem { Value = item.Id.ToString(), Text = item.Name});
}
@Html.DropDownListFor(x => x.district, _district, new { @class = "dropdownList"});

else {
@Html.DropDownListFor(x => x.district, Enumerable.Empty< SelectListItem >(), "--Select--", new { @class = "dropdownList", disabled = true });
}