【发布时间】:2013-09-25 04:42:46
【问题描述】:
我确定这是一个简单的问题,但我的视图中有一个 select html 元素,该元素在页面加载后被 AJAX JQUERY 调用填充:
select id="CategoryList" multiple="multiple" style="width: 212px;"
这一切都很好,但当我尝试将值读回控制器时找不到它,我尝试过传递特定参数或传递 FormCollections 的 HTTP POSTS 和 HTTP GETS 但我仍然找不到该项目。在 Web 表单中,我们可以将 html 元素标记为 runat=server,这里是否有一个等效的东西,我可以将 HTML 控件绑定到页面。
我会使用@Html.ListBox() 方法,但模型中没有要显示的信息,我真的想将这些信息放入模型中,因为它没有语法意义。
这是我的控制器
[HttpPost]
public ActionResult Info(FormCollection collection)
{
...
}
collection.GetValue("CategoryList") 不是表单集合的一部分。
感谢您的帮助,
【问题讨论】:
-
你真的应该强烈地输入你的观点。它使您遇到的所有棘手的错误都消失了..
-
可以帮助解决此类问题的一件事是在 Fiddler 或浏览器的网络选项卡中查看您的原始请求。如果您查看此内容,您会发现该值从未发布过,这意味着它绝对不会成为
FormCollection的一部分。
标签: c# jquery html asp.net-mvc asp.net-mvc-4