请参阅附件中的图像。 我正在使用Dynamic DropDownList来显示Country,State&我的Add_New组织表格中的城市。我正在从SQL数据库中检索DropDownList项。
问题是,当我单击提交按钮时,它会将ID存储到数据库中,而不是DropDownList项的Text。
请帮助我,我尝试了很多解决方案,但问题仍然存在。 用于保存数据的控制器:
[HttpPost]
Public ActionResult Addnew(Organiztioninfo org)
{
db.Organiztioninfoes.Add(org);
db.SaveChanges();
return View();
}
//Organization Info is my table name. I am using Entity Framework
用于从DB中检索国家/地区列表数据的控制器:
Public JsonResult Details()
{
var country = db.countries.ToList();
//countries is database table name holding list of countries
List<SelectListItems> licountry = new List<SelectListItems>();
foreach(var u in country)
{
licountry.Add(new SelectListItems{Text = u.Name, Value= u.ID.ToString()});
}
return Json(new SelectList(licountry, "Value", "Text",
JsonRequestBehaviour.AllowGet ))
}
//Same Methods are implemented for populating State & Cities list..
答案 0 :(得分:0)
这背后的原因是下拉列表的SelectedValue
属性被分配给Organiztioninfo
类对象的属性。下拉列表的Value
属性绑定到Id
,Country
和State
的{{1}},如City
图片中所示。
如果您不希望分配J Query-Dynamic List
,则应在动态创建下拉列表时将Id
设置为Value
。
data.Text
这可以解决您的问题。