首页 > 解决方案 > 遍历 umbraco 中的单选按钮选项

问题描述

我在 umbraco cms 中使用单选按钮列表:

在此处输入图像描述

我知道如何获取 cms 用户选择的值,但是如何循环(列出)单选按钮列表具有的所有选项?

理想情况下,我希望有这样的 html 来突出显示他们选择的那个:

<ul>
<li>A</li>
<li class="chosen">B</li>
<li>C</li>
</ul>

我想用 Razor 来做这件事。

标签: c#razorumbraco

解决方案


获取您创建的单选按钮列表数据类型的 ID,然后用于DataTypeService枚举该单选按钮列表中的所有选项。

<ul>
    @{
        var optionsDataTypeId = 1068; // your datatype id
        var selectedOption = Umbraco.GetPreValueAsString(Model.Content.GetPropertyValue<int>("favoritePet"));
        foreach (var option in Umbraco.DataTypeService.GetPreValuesCollectionByDataTypeId(optionsDataTypeId).PreValuesAsDictionary.Values)
        {
            <li class="@(option.Value == selectedOption ? "chosen" : "")">@option.Value</li>
        }
    }
</ul>

推荐阅读