最近,小编正在开发一个基于net core2的CMS,命名为:NetCoreTFCMS。在开发过程中经常会使用到下拉列表,觉得在View中要动态交互数据比较麻烦,就想着自己写一个tagHerlper来将enum快速生成下拉列表。
下面,我就从一个具体实例来抛砖引玉下:
会员列表页-会员状态下拉列表
1.首先定义一个文章状态的enum类型,且叫UserStatus吧。
2.构建一个EnumsTagHelper扩展类
3.在View视图中引用
<enums asp-id="property" asp-enum="@(UserStatus.Normal)" asp-value="@ViewBag.SelectedStatus" asp-valuetype="1" asp-href="@Html.AC()/Index">
<option value="">所有属性</option>
</enums>
解释下: 其中的asp-value即为默认选择的项目值 ,asp-type是指默认下拉列表的vaalue是值类型
生成如下代码:
<select id="property" data-href="/TF/Users/Index">
<option value="">所有属性</option>
<option value='0'>正常</option>
<option value='1'>待验证</option>
<option value='2'>待审核</option>
<option value='3'>已禁用</option>
</select>
不知道大家看明白没有,如果对taghelper不了解的,请行了解下taghelper。