javascript - MVC 枚举列表使用 Angular JS 在下拉列表中绑定(bind)

标签 javascript c# angularjs asp.net-mvc model-view-controller

我有一个 MVC 枚举列表,我想使用 Angular 方法将其绑定(bind)到下拉列表中。 怎么可能?

public enum DefultBookType : byte
{
  Not Direct= 0,
  Individual = 1
}

public ActionResult Application(){
  ViewBag.BT = Enum.GetNames(typeof(DefultBookType)).ToList();
  return View();
}

@{
 var lstBT=  @ViewBag.BT
}
<select ng-model="Btype" ng-options="ctr as ctr.Name for ctr in lstBT track by ctr.Id">
   <option value="">select</option>
</select>

最佳答案

您可以按照下面的代码片段进行操作。

替换controller.cs文件中的enumaction:

public enum DefultBookType : byte
{
    NotDirect = 0,
    Individual = 1
}

public ActionResult Application()
{
    ViewData["BT"] = JsonConvert.SerializeObject(Enum.GetValues(typeof(DefultBookType)), Formatting.Indented, new StringEnumConverter());
    return View();
}

您的 .cshtml 将是

<select ng-model="selected" ng-options="key as val for (key, val) in @ViewData["BT"]">
   <option value="">select</option>
</select>

下拉看起来像屏幕截图所示:

enter image description here

关于javascript - MVC 枚举列表使用 Angular JS 在下拉列表中绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44845718/

相关文章:

c# - 不同列名的 EF Core 5 HasForeignKey 问题

c# - 包含两个 Caliburn.Micro View 的对话框 View ?

javascript - 如何检查 Angular 6 中最接近的父类名?

javascript - Angular 8-处理http返回时可观察到管道问题

c# - StoreGeneratedPattern 是什么意思?

javascript - 等到前一个函数以 Angular 执行

javascript - 对 ng-click 指令进行表单验证

javascript - Google 图表中的双 y 轴

javascript - 有没有办法阻止表格移动?

javascript - 点击退出后下拉菜单不会关闭