我正在使用ASP.NET MVC,我的HTML页面上的表单集合中有一个小部件,当我点击主表单的保存按钮时,我不仅希望将数据保存在主页面上表单以及窗口小部件上的内容,我该怎么做?
答案 0 :(得分:1)
如果窗口小部件生成自己的窗体,那么你运气不好,因为视图会呈现两个嵌套的窗体,这些窗体不起作用:
This will now work:
<form>
<your input>
<widget>
<form>
<widget's input>
</form>
</form>
如果您的小部件不是那样,那么您在视图中打开表单,添加输入,包含小部件,添加提交按钮,然后关闭表单。
然后你有两个选择。
您创建一个接受Post动词的动作,并且参数接受FormsCollection。这是一个包含所有输入的字典,包括您编写的输入和小部件输入的输入。然后,您将根据自己的喜好管理帖子。
使用所有输入的名称创建模型对象,使视图按字符串键入,然后接受该模型作为操作的参数。这样做的好处是所有内容都更加透明(因为数据绑定器将完成大部分工作)但设置起来可能有点棘手