Javascript Asp.NETMVC中相同属性的编辑器和下拉列表
我想为单个字段添加编辑器和下拉列表。如果数据库中没有一个代理,则会出现这种情况,用户输入代理名称,否则将从下拉列表中选择该值。请给我推荐合适的答案。这里只选择了第一个编辑器或Dropdownlist for,否则第二个为空,我想传递文本值以防未选择dropdown,并传递下拉值,使文本框为空Javascript Asp.NETMVC中相同属性的编辑器和下拉列表,javascript,c#,asp.net-mvc,asp.net-mvc-4,asp.net-mvc-3,Javascript,C#,Asp.net Mvc,Asp.net Mvc 4,Asp.net Mvc 3,我想为单个字段添加编辑器和下拉列表。如果数据库中没有一个代理,则会出现这种情况,用户输入代理名称,否则将从下拉列表中选择该值。请给我推荐合适的答案。这里只选择了第一个编辑器或Dropdownlist for,否则第二个为空,我想传递文本值以防未选择dropdown,并传递下拉值,使文本框为空 @Html.EditorFor(model => model.AgentName) @Html.DropDownListFor(model => model.Ag
@Html.EditorFor(model => model.AgentName)
@Html.DropDownListFor(model => model.AgentName, ViewBag.Agency as IEnumerable<SelectListItem>, "Select")
@Html.EditorFor(model=>model.AgentName)
@Html.DropDownListFor(model=>model.AgentName,ViewBag.Agency作为IEnumerable,“选择”)
相反,您可以获取两个属性。。。
作为
在我看来
@Html.DropDownListFor(model => model.SelectedAgent, ViewBag.Agency as IEnumerable<SelectListItem>, "Select")
@Html.EditorFor(model => model.AgentName)
在课堂上增加了一个字段后,我在控制器和视图中添加了几行代码,最后得到了答案 查看:
@Html.DropDownListFor(model => model.AgentName, ViewBag.Agency as IEnumerable<SelectListItem>, "Select")
@Html.EditorFor(model => model.AgentNameNew)
@Html.ValidationMessageFor(model => model.AgentName)
internationalarrival.AgentName = string.IsNullOrEmpty(internationalarrival.AgentNameNew) ? internationalarrival.AgentName : internationalarrival.AgentNameNew;
db.InternationalArrivals.Add(internationalarrival);
db.SaveChanges();
public partial class InternationalArrival
{
public decimal InternationalArrivalId { get; set; }
public string AgentName { get; set; }
public string AgentNameNew { get; set; }
[Required]
public string AgentCode { get; set; }
public Nullable<DateTime> ArrivalDate { get; set; }
[Required]
public Nullable<int> ForPAX { get; set; }
[Required]
public Nullable<int> IndPAX { get; set; }
}
而且
型号:
@Html.DropDownListFor(model => model.AgentName, ViewBag.Agency as IEnumerable<SelectListItem>, "Select")
@Html.EditorFor(model => model.AgentNameNew)
@Html.ValidationMessageFor(model => model.AgentName)
internationalarrival.AgentName = string.IsNullOrEmpty(internationalarrival.AgentNameNew) ? internationalarrival.AgentName : internationalarrival.AgentNameNew;
db.InternationalArrivals.Add(internationalarrival);
db.SaveChanges();
public partial class InternationalArrival
{
public decimal InternationalArrivalId { get; set; }
public string AgentName { get; set; }
public string AgentNameNew { get; set; }
[Required]
public string AgentCode { get; set; }
public Nullable<DateTime> ArrivalDate { get; set; }
[Required]
public Nullable<int> ForPAX { get; set; }
[Required]
public Nullable<int> IndPAX { get; set; }
}
公共部分类
{
公共十进制数{get;set;}
公共字符串AgentName{get;set;}
公共字符串agentnamew{get;set;}
[必需]
公共字符串代理代码{get;set;}
公共可为空的ArrivalDate{get;set;}
[必需]
公共可空ForPAX{get;set;}
[必需]
公共可空IndPAX{get;set;}
}
不能将两个表单控件绑定到同一属性(默认模型绑定器DefaultModelBinder
仅绑定第一个。创建一个具有单独属性的视图模型,请确保发布的值为EditorFor
,而不是DropDownListFor
。根据模型绑定,将发布第一个辅助对象,忽略具有相同视图模型属性的其他辅助对象。对两个辅助对象使用单独的属性s