Html 如何在Asp.net MVR中获取下拉列表中选定项的文本
当我要发送所选项目的文本时,当我选择任何项目并将其id发送到模型时,我有一个下拉列表。我如何才能做到这一点?这是我发送所选项目id的代码,我还发布了获取所选项目的方法的代码。请帮助我哪里出错 看法Html 如何在Asp.net MVR中获取下拉列表中选定项的文本,html,asp.net-mvc,razor,Html,Asp.net Mvc,Razor,当我要发送所选项目的文本时,当我选择任何项目并将其id发送到模型时,我有一个下拉列表。我如何才能做到这一点?这是我发送所选项目id的代码,我还发布了获取所选项目的方法的代码。请帮助我哪里出错 看法 分配给 @Html.DropDownListFor(m=>m.AssignedTo,(ViewBag.DispatchersList)作为IEnumerable,新的{@class=”“}) @Html.ValidationMessageFor(m=>m.AssignedTo) 控制器 publ
分配给
@Html.DropDownListFor(m=>m.AssignedTo,(ViewBag.DispatchersList)作为IEnumerable,新的{@class=”“})
@Html.ValidationMessageFor(m=>m.AssignedTo)
控制器
public static object GetSelectListWithSelectOption(dynamic model, int selected, string valuefield, string textfield, bool addSelect = true, string addSelectValue = "-1", bool performSort = false)
{
List<SelectListItem> selectList = null;
if (model != null)
{
selectList = new SelectList(model, valuefield, textfield, selected).ToList();
if (performSort)
selectList = selectList.OrderBy(x => x.Text).ToList();
}
else
{
selectList = new List<SelectListItem>();
}
if (addSelect)
selectList.Insert(0, new SelectListItem { Text = Cygnus.Library.Resources.General.txtSelect, Value = addSelectValue, Selected = true });
return selectList;
}
公共静态对象GetSelectListWithSelectOption(动态模型,选中整数,字符串值字段,字符串文本字段,bool addSelect=true,字符串addSelectValue=“-1”,bool performSort=false)
{
List-selectList=null;
如果(型号!=null)
{
selectList=新的selectList(model,valuefield,textfield,selected).ToList();
如果(性能排序)
selectList=selectList.OrderBy(x=>x.Text.ToList();
}
其他的
{
选择列表=新列表();
}
如果(添加选择)
插入(0,新SelectListItem{Text=Cygnus.Library.Resources.General.txtSelect,Value=addSelectValue,Selected=true});
返回选择列表;
}
要想发回文本,只需将SelectListItems
属性的值填写为文本
属性提供的相同值即可
public static object GetSelectListWithSelectOption(dynamic model, int selected, string valuefield, string textfield, bool addSelect = true, string addSelectValue = "Selected Item Text", bool performSort = false)
{
List<SelectListItem> selectList = null;
if (model != null)
{
selectList = new SelectList(model, textfield, textfield, selected).ToList();
if (performSort)
selectList = selectList.OrderBy(x => x.Text).ToList();
}
else
{
selectList = new List<SelectListItem>();
}
if (addSelect)
selectList.Insert(0, new SelectListItem { Text = Cygnus.Library.Resources.General.txtSelect, Value = Cygnus.Library.Resources.General.txtSelect, Selected = true });
return selectList;
}
公共静态对象GetSelectListWithSelectOption(动态模型,选中整数,字符串值字段,字符串文本字段,bool addSelect=true,string addSelectValue=“所选项目文本”,bool performSort=false)
{
List-selectList=null;
如果(型号!=null)
{
selectList=新建selectList(型号、文本字段、文本字段、选定项)。ToList();
如果(性能排序)
selectList=selectList.OrderBy(x=>x.Text.ToList();
}
其他的
{
选择列表=新列表();
}
如果(添加选择)
插入(0,新SelectListItem{Text=Cygnus.Library.Resources.General.txtSelect,Value=Cygnus.Library.Resources.General.txtSelect,Selected=true});
返回选择列表;
}
要想发回文本,只需将SelectListItems
属性的值填写为文本
属性提供的相同值即可
public static object GetSelectListWithSelectOption(dynamic model, int selected, string valuefield, string textfield, bool addSelect = true, string addSelectValue = "Selected Item Text", bool performSort = false)
{
List<SelectListItem> selectList = null;
if (model != null)
{
selectList = new SelectList(model, textfield, textfield, selected).ToList();
if (performSort)
selectList = selectList.OrderBy(x => x.Text).ToList();
}
else
{
selectList = new List<SelectListItem>();
}
if (addSelect)
selectList.Insert(0, new SelectListItem { Text = Cygnus.Library.Resources.General.txtSelect, Value = Cygnus.Library.Resources.General.txtSelect, Selected = true });
return selectList;
}
公共静态对象GetSelectListWithSelectOption(动态模型,选中整数,字符串值字段,字符串文本字段,bool addSelect=true,string addSelectValue=“所选项目文本”,bool performSort=false)
{
List-selectList=null;
如果(型号!=null)
{
selectList=新建selectList(型号、文本字段、文本字段、选定项)。ToList();
如果(性能排序)
selectList=selectList.OrderBy(x=>x.Text.ToList();
}
其他的
{
选择列表=新列表();
}
如果(添加选择)
插入(0,新SelectListItem{Text=Cygnus.Library.Resources.General.txtSelect,Value=Cygnus.Library.Resources.General.txtSelect,Selected=true});
返回选择列表;
}
要想发回文本,只需将SelectListItems
属性的值填写为文本
属性提供的相同值即可
public static object GetSelectListWithSelectOption(dynamic model, int selected, string valuefield, string textfield, bool addSelect = true, string addSelectValue = "Selected Item Text", bool performSort = false)
{
List<SelectListItem> selectList = null;
if (model != null)
{
selectList = new SelectList(model, textfield, textfield, selected).ToList();
if (performSort)
selectList = selectList.OrderBy(x => x.Text).ToList();
}
else
{
selectList = new List<SelectListItem>();
}
if (addSelect)
selectList.Insert(0, new SelectListItem { Text = Cygnus.Library.Resources.General.txtSelect, Value = Cygnus.Library.Resources.General.txtSelect, Selected = true });
return selectList;
}
公共静态对象GetSelectListWithSelectOption(动态模型,选中整数,字符串值字段,字符串文本字段,bool addSelect=true,string addSelectValue=“所选项目文本”,bool performSort=false)
{
List-selectList=null;
如果(型号!=null)
{
selectList=新建selectList(型号、文本字段、文本字段、选定项)。ToList();
如果(性能排序)
selectList=selectList.OrderBy(x=>x.Text.ToList();
}
其他的
{
选择列表=新列表();
}
如果(添加选择)
插入(0,新SelectListItem{Text=Cygnus.Library.Resources.General.txtSelect,Value=Cygnus.Library.Resources.General.txtSelect,Selected=true});
返回选择列表;
}
要想发回文本,只需将SelectListItems
属性的值填写为文本
属性提供的相同值即可
public static object GetSelectListWithSelectOption(dynamic model, int selected, string valuefield, string textfield, bool addSelect = true, string addSelectValue = "Selected Item Text", bool performSort = false)
{
List<SelectListItem> selectList = null;
if (model != null)
{
selectList = new SelectList(model, textfield, textfield, selected).ToList();
if (performSort)
selectList = selectList.OrderBy(x => x.Text).ToList();
}
else
{
selectList = new List<SelectListItem>();
}
if (addSelect)
selectList.Insert(0, new SelectListItem { Text = Cygnus.Library.Resources.General.txtSelect, Value = Cygnus.Library.Resources.General.txtSelect, Selected = true });
return selectList;
}
公共静态对象GetSelectListWithSelectOption(动态模型,选中整数,字符串值字段,字符串文本字段,bool addSelect=true,string addSelectValue=“所选项目文本”,bool performSort=false)
{
List-selectList=null;
如果(型号!=null)
{
selectList=新建selectList(型号、文本字段、文本字段、选定项)。ToList();
如果(性能排序)
selectList=selectList.OrderBy(x=>x.Text.ToList();
}
其他的
{
选择列表=新列表();
}
如果(添加选择)
插入(0,新SelectListItem{Text=Cygnus.Library.Resources.General.txtSelect,Value=Cygnus.Library.Resources.General.txtSelect,Selected=true});
返回选择列表;
}
然后使选择列表的文本
属性和值
属性相同-选择列表=新选择列表(型号、文本字段、文本字段)
。请注意,添加第四个参数没有意义-您绑定到一个属性,因此它被忽略。它可以工作。非常抱歉,这是我很长时间以来看到的最没有意义的代码。您的方法创建了一个SelectList
,但您将其作为对象返回,这意味着您需要再次强制转换它。您的方法接受dynamic
,但SelectList
接受IEnumerable
意味着您可以抛出异常。参数int selected
是无意义的,因为当您绑定到模型时,它会被忽略。参数addSelect
和addSelectValue
不了解如何使用SelectList
,这意味着您甚至不能在模型属性上使用基本的[必需的]
属性(您可以使用的第3个参数生成标签选项。)