我在下拉列表中有一个下拉列表,我在其中填充了所有枚举 [英] I have a dropdown in the dropdown I am populate all the enums
本文介绍了我在下拉列表中有一个下拉列表,我在其中填充了所有枚举的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
i have a dropdown in the dropdown i am populate all the Enums through viewbag .now i want to access the value of enums if the dropdown change event fire.
What I have tried:
public ActionResult Attribute()
{
List<SelectList> list = new List<SelectList>();
var references = Assembly.GetExecutingAssembly().GetTypes().Where(t => t.IsEnum && t.IsPublic).OrderBy(t => t.Name);
List<SelectListItem> items = references.Select(r =>
new SelectListItem()
{
Value = r.Name,
Text = r.Name
}).ToList();
ViewBag.Enums = items;
return View();
}
<select class='form-Control col-xs-4' type='text' id='defaultvalues' >@if (ViewBag.Enums != null){foreach (var item in Enums){<text><option value=' @item.Value'> @item.Text</option></text>}}</select>
-------------------------------- Jquery change Event--------------------
$(document).delegate("#defaultvalues", "change", function () {
var value = $(this).val();
if (value != null && value != undefined) {
Send("LoadEnums", "SystemSettings", { Enums:value }, successLoadEnumValue, exMessage);
return false;
}
});
public JsonResult LoadEnums(string Enums)
{
Assembly assem = Assembly.ReflectionOnlyLoadFrom(@".\Goldhay.Core.dll"); ;
Type typ = assem.GetType(Enums.ToString());
FieldInfo[] fields = typ.GetFields();
foreach (var field in fields)
{
if (field.Name.Equals("value__")) continue;
}
return Json("");
}
推荐答案
(文档).委托( #defaultvalues", 更改" ,函数(){ var 值 =
(document).delegate("#defaultvalues", "change", function () { var value =
(如果(值!= 空& & 值!=未定义){ Send(" ," SystemSettings",{枚举:返回 假; } }); 公共 JsonResult LoadEnums(字符串枚举) { Assembly assem = Assembly.ReflectionOnlyLoadFrom( @" );; ; 类型typ = assem.GetType(Enums.ToString()); FieldInfo []字段= typ.GetFields(); foreach ( var 字段 in 字段) { 如果(field.Name.Equals(" ))继续; } 返回 Json(" ); }
(this).val(); if (value != null && value != undefined) { Send("LoadEnums", "SystemSettings", { Enums:value }, successLoadEnumValue, exMessage); return false; } }); public JsonResult LoadEnums(string Enums) { Assembly assem = Assembly.ReflectionOnlyLoadFrom(@".\Goldhay.Core.dll"); ; Type typ = assem.GetType(Enums.ToString()); FieldInfo[] fields = typ.GetFields(); foreach (var field in fields) { if (field.Name.Equals("value__")) continue; } return Json(""); }
这篇关于我在下拉列表中有一个下拉列表,我在其中填充了所有枚举的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文