如何将局部视图发布到另一个控制器方法

时间:2010-09-29 03:47:19

标签: asp.net-mvc-2 partial-views

我的Index.aspx视图中有一个表单标记。 Index.aspx包含多个部分视图,并使用相同的模型来呈现它们。

现在,当任何部分视图发布时,带有提交按钮表单的表单将发布到OneActionMethod。但我想要一些部分视图将表单发布到OtherActionMethod。

如何在不使用操作链接的情况下实现此目的,只需使用此特定空间视图中的提交按钮即可实现?

我在评论中写了这个问题的更新。答案仍然不清楚。

2 个答案:

答案 0 :(得分:1)

你听起来像是在尝试在MVC中编写“WebForms”风格。

为什么你有一个大表格包含你所有的部分内容?将它们分成独特的形式,并让每一个形式都适合它。

编辑:随着您的进一步澄清,我唯一可以想到的(除了重新设计使用单个表单,如果他们想要共享数据会导致问题),是发布到单个操作,然后路由请求控制器内的私有成员对ActionA或ActionB的请求,具体取决于特定的表单元素。

答案 1 :(得分:1)

我相信一点点javascript就可以完成你的工作。你必须挂钩表单的提交事件并更改表单的action属性。记住action是表单属性而不是提交按钮。在jquery你可以做类似

的事情
$("#myform").submit(function(){
   if(isFirstSubmitButton){
    $(this).attr(FirstAction);
   }
   else if(isSecondSubmitButton)
   {
    $(this).attr(SecondAction);
   }
return true;
});