1

服务器端:我制作“IEnumerable”类型的 ViewBag

客户端:迭代 ViewBag,以构建下拉列表。

如何使用 JavaScript/jQuery 迭代我的 SelectListItems?

Firefox 错误消息:“TypeError:list.each 不是函数”

function test() {
    var modtagerId = $('#ModtagerId');
    modtagerId.empty();

    // ViewBag.dropdownModtagerListeNyhedsbrev is of type "IEnumerable<SelectListItem>"
    var list = ViewBag.dropdownModtagerListeNyhedsbrev;

    list.each(function () {
        $("<option />", {
            val: this.value,
            text: this.text
        }).appendTo(modtagerId);
    });
}
4

1 回答 1

1

我终于解决了这个问题。我改用 JavaScriptforeach并用来<text>转义 Razor。

如果有人关心,我的解决方案:(我为其他人保留了 console.log())。

function updateModtagerGruppeDropdown() {
    var modtagerId = $('#ModtagerId');
    modtagerId.empty();

    @foreach (var item in ViewBag.dropdownModtagerListeVelkomstbrev)
    {
        @:console.log('list: ' + "@(item.Value)" + ", " + "@(item.Text)");
        <text>
            var value = "@(item.Value)";
            var text = "@(Html.Raw(item.Text))";
            $("<option />", {
                val: value,
                text: text
            }).appendTo(modtagerId);
        </text>
    }
}
于 2014-09-18T10:47:28.413 回答