1

所以我正在构建一个 MVC4 应用程序,我根本无法让 Html.DropDownList 正常运行。所有实际页面显示的是一个提交按钮,它实际上并没有呈现下拉列表。

这是控制器:

    public ActionResult Index() {
        var items = new SelectList(
            new[] {
                new { Value="ships", Text="Ship" },
            },
            "Value", "Text"
        );

        ViewData["tableitems"] = items;

        return View();
    }

这是观点:

@using (Html.BeginForm("Search", "Encyclopedia", FormMethod.Get)) {
    @*<select id="table" name="table">
        <option value=""></option>
        <option value="ships">Ship</option>
    </select>*@

    Html.DropDownList("table", ViewData["tableitems"] as SelectList, "Ship" );

    <input type="submit" value="view" />
}

我一直在网上搜索几个小时尝试各种排列,但我无法得到它。谁能指出我做错了什么?

4

1 回答 1

3

@在前面少了一个Html.DropDownList

@using (Html.BeginForm("Search", "Encyclopedia", FormMethod.Get)) {
    @Html.DropDownList("table", ViewData["tableitems"] as SelectList, "Ship" );
    <input type="submit" value="view" />
}

如果没有@,您的代码只是评估为 anMvcHtmlString但它实际上并没有被渲染到视图,这就是@进来的地方!

于 2013-01-18T00:30:40.497 回答