Jquery 如何在MVC应用程序中设置select2列表框中选择的值?
我正在mvc应用程序中使用SELECT2列表框。从该列表框中,用户可以从下拉列表中选择值,并可以输入任何他想要的值 在上图中,“过敏和皮肤”来自下拉列表,文本“usertyped”由用户键入 我可以发布和存储所有数据,包括用户键入的值。但问题是,在用户发布表单后,我无法设置在列表框中选择的值 下面是我的代码: 模态:Jquery 如何在MVC应用程序中设置select2列表框中选择的值?,jquery,asp.net-mvc,Jquery,Asp.net Mvc,我正在mvc应用程序中使用SELECT2列表框。从该列表框中,用户可以从下拉列表中选择值,并可以输入任何他想要的值 在上图中,“过敏和皮肤”来自下拉列表,文本“usertyped”由用户键入 我可以发布和存储所有数据,包括用户键入的值。但问题是,在用户发布表单后,我无法设置在列表框中选择的值 下面是我的代码: 模态: public class SegmentList { public int Id { get; set; } public str
public class SegmentList
{
public int Id { get; set; }
public string Segname { get; set; }
public int? SegId { get; set; }
public int? Active { get; set; }
public List<string> List { get; set; }
public List<SegmentList> seglist { get; set; }
}
公共类分段列表
{
公共int Id{get;set;}
公共字符串Segname{get;set;}
公共int?SegId{get;set;}
公共int?活动{get;set;}
公共列表{get;set;}
公共列表seglist{get;set;}
}
视图:
@model selectTokenization.Models.SegmentList
@使用(Ajax.BeginForm(“Index”,“Home”,新的AjaxOptions{HttpMethod=“POST”,InsertionMode=InsertionMode.Replace}))
{
相关段
@Html.ListBoxFor(model=>model.List,新的MultiSelectList(ViewBag.List,“Segname”,“Segname”,model.List.AsEnumerable()),新的{@class=“form control tokenizationSelect2”,@multiple=“multiple”})
拯救
}
$(文档).ready(函数(){
$(“.tokenizationSelect2”).select2({
占位符:“选择段”,
标签:是的,
标记分隔符:['/',',',';','']
});
})
控制器:
public ActionResult Index()
{
List<SegmentList> li = new List<SegmentList>();
li.Add(new SegmentList { Segname = "Select", SegId = 0 });
li.Add(new SegmentList { Segname = "Allergy", SegId = 1 });
li.Add(new SegmentList { Segname = "Skin", SegId =2 });
li.Add(new SegmentList { Segname = "Hair", SegId =3 });
li.Add(new SegmentList { Segname = "Fever", SegId = 4 });
li.Add(new SegmentList { Segname = "USA", SegId = 5 });
li.Add(new SegmentList { Segname = "All", SegId = 6 });
SegmentList obj = new SegmentList();
obj.seglist = li;
ViewBag.List = li;
return View(obj);
}
[HttpPost]
public ActionResult Index(SegmentList Segment)
{
MyModal db = new MyModal();
string segmentIds = string.Empty;
foreach (string s in Segment.List)
{
segmentIds += s + ",";
}
Segment obj = new Segment();
obj.Segname = segmentIds.TrimEnd(',');
obj.SegId = 1;
obj.Active = 1;
db.Segments.Add(obj);
db.SaveChanges();
List<SegmentList> li = new List<SegmentList>();
li.Add(new SegmentList { Segname = "Select", SegId = 0 });
li.Add(new SegmentList { Segname = "Allergy", SegId = 1 });
li.Add(new SegmentList { Segname = "Skin", SegId = 2 });
li.Add(new SegmentList { Segname = "Hair", SegId = 3 });
li.Add(new SegmentList { Segname = "Fever", SegId = 4 });
li.Add(new SegmentList { Segname = "USA", SegId = 5 });
li.Add(new SegmentList { Segname = "All", SegId = 6 });
SegmentList obj1 = new SegmentList();
ViewBag.List = li;
return View(obj1);
}
public ActionResult Index()
{
List li=新列表();
添加(新段列表{Segname=“Select”,SegId=0});
添加(新段列表{Segname=“Allergy”,SegId=1});
添加(新段列表{Segname=“Skin”,SegId=2});
添加(新分段列表{Segname=“Hair”,SegId=3});
添加(新段列表{Segname=“Fever”,SegId=4});
添加(新段列表{Segname=“USA”,SegId=5});
添加(新段列表{Segname=“All”,SegId=6});
SegmentList obj=新的SegmentList();
obj.seglist=li;
ViewBag.List=li;
返回视图(obj);
}
[HttpPost]
公共行动结果索引(段列表段)
{
MyModal db=新的MyModal();
string segmentIds=string.Empty;
foreach(Segment.List中的字符串s)
{
分段ID+=s+“,”;
}
段obj=新段();
obj.Segname=segmentIds.TrimEnd(',');
obj.SegId=1;
obj.Active=1;
db.Segments.Add(obj);
db.SaveChanges();
List li=新列表();
添加(新段列表{Segname=“Select”,SegId=0});
添加(新段列表{Segname=“Allergy”,SegId=1});
添加(新段列表{Segname=“Skin”,SegId=2});
添加(新分段列表{Segname=“Hair”,SegId=3});
添加(新段列表{Segname=“Fever”,SegId=4});
添加(新段列表{Segname=“USA”,SegId=5});
添加(新段列表{Segname=“All”,SegId=6});
SegmentList obj1=新的SegmentList();
ViewBag.List=li;
返回视图(obj1);
}
发布后,您是否尝试使用新的增值数据库再次初始化表单?想法:1/用户编写一些东西2/您将其插入数据库3/您再次初始化表单以获取新数据。使用ajax,用户将看不到它。不要发布重复的问题!有解决这个问题的办法吗?
public ActionResult Index()
{
List<SegmentList> li = new List<SegmentList>();
li.Add(new SegmentList { Segname = "Select", SegId = 0 });
li.Add(new SegmentList { Segname = "Allergy", SegId = 1 });
li.Add(new SegmentList { Segname = "Skin", SegId =2 });
li.Add(new SegmentList { Segname = "Hair", SegId =3 });
li.Add(new SegmentList { Segname = "Fever", SegId = 4 });
li.Add(new SegmentList { Segname = "USA", SegId = 5 });
li.Add(new SegmentList { Segname = "All", SegId = 6 });
SegmentList obj = new SegmentList();
obj.seglist = li;
ViewBag.List = li;
return View(obj);
}
[HttpPost]
public ActionResult Index(SegmentList Segment)
{
MyModal db = new MyModal();
string segmentIds = string.Empty;
foreach (string s in Segment.List)
{
segmentIds += s + ",";
}
Segment obj = new Segment();
obj.Segname = segmentIds.TrimEnd(',');
obj.SegId = 1;
obj.Active = 1;
db.Segments.Add(obj);
db.SaveChanges();
List<SegmentList> li = new List<SegmentList>();
li.Add(new SegmentList { Segname = "Select", SegId = 0 });
li.Add(new SegmentList { Segname = "Allergy", SegId = 1 });
li.Add(new SegmentList { Segname = "Skin", SegId = 2 });
li.Add(new SegmentList { Segname = "Hair", SegId = 3 });
li.Add(new SegmentList { Segname = "Fever", SegId = 4 });
li.Add(new SegmentList { Segname = "USA", SegId = 5 });
li.Add(new SegmentList { Segname = "All", SegId = 6 });
SegmentList obj1 = new SegmentList();
ViewBag.List = li;
return View(obj1);
}