我在下拉列表中有一个下拉列表,我在其中填充了所有枚举 [英] I have a dropdown in the dropdown I am populate all the enums

查看:94
本文介绍了我在下拉列表中有一个下拉列表,我在其中填充了所有枚举的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆