从页面 MVC4 读取 HTML 元素

本文关键字:HTML 元素 读取 MVC4 | 更新日期: 2023-09-27 18:31:59

我确定这是一个简单的问题,但我的视图上有一个名为 html 元素,该元素在页面加载后使用 AJAX JQUERY 调用填充:

select id="CategoryList" multiple="multiple" style="width: 212px;"

这一切都工作正常,但是当我尝试将值读回控制器时,找不到它,我尝试执行HTTP POSTS和HTTP GETS传递特定参数或传递FormCollections,但我仍然找不到该项目。 在 Web 表单中,我们可以将 html 元素标记为 runat=server,这里有没有等效的东西,我可以将 HTML 控件绑定到页面。

我会使用 @Html.ListBox() 方法,但我在模型中没有要显示的信息,我真的想把这些信息放在模型中,因为它没有语法意义。

这是我的控制器

    [HttpPost]
    public ActionResult Info(FormCollection collection)
    {
          ...
    }

其中collection.GetValue("CategoryList")不是表单集合的一部分。

感谢您的帮助,

从页面 MVC4 读取 HTML 元素

您需要在

select上具有name属性才能发布到服务器。任何没有名称的输入字段都不会发布。

如果您查看 ASP.NET 为您生成的标记(WebForms 和 MVC),通常它会为您提供一个同时包含idname的字段,但只有name在您发布时重要。