Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 视图中的不同按钮在mvc中执行不同的操作_C#_Asp.net Mvc - Fatal编程技术网

C# 视图中的不同按钮在mvc中执行不同的操作

C# 视图中的不同按钮在mvc中执行不同的操作,c#,asp.net-mvc,C#,Asp.net Mvc,我在MVC中遇到了一些问题 内部视图我有两个按钮,一个用于最终提交,另一个用于向视图添加动态内容。同样,这两种方法都用于发布表单。我想知道这些将如何在控制器中使用 示例 如果我单击final submit,它将重定向到某个视图或任何其他操作,并且如果我在同一视图中单击add按钮,我将返回到同一视图 注意:我使用两个按钮发布相同的操作 <input type="submit" name="actionBtn" value="add value" /> <input type="s

我在MVC中遇到了一些问题

内部视图我有两个按钮,一个用于最终提交,另一个用于向视图添加动态内容。同样,这两种方法都用于发布表单。我想知道这些将如何在控制器中使用

示例

如果我单击final submit,它将重定向到某个视图或任何其他操作,并且如果我在同一视图中单击add按钮,我将返回到同一视图

注意:我使用两个按钮发布相同的操作

<input type="submit" name="actionBtn" value="add value" />
<input type="submit" name="actionBtn" value="finalsubmit" />
如果你想的话,可以用另一种方式(你必须使用名字,但方式不同)


我已经使用了相同的方法,但这不是一个好主意,因为我们使用字符串查找按钮。如果字符串值开发人员之间的任何拼写mastake遇到困难,则很难维护应用程序。探索任何不同的方法拼写问题是另一个问题,要克服这个问题,您可以使用常量或使用资源文件。稍后将值与常量本身进行比较。为什么使用相同的操作?我认为单独行动更好
public ActionResult YourPostAction(string actionBtn)
{
   if(actionBtn == "Add Value")
  {
  }
  else if(actionBtn == "finalSubmit")
  {
  }
}
@using (Html.BeginForm())
{
    <input type="hidden" name="actionName" id="hdnAction" />
    <input type="submit" value="test" name="actionBtn" onclick="setThis('test')" />
    <input type="submit" value="test1" name="actionBtn" onclick="setThis('test1')"/>
}

<script language="javascript">
    function setThis(obj) {            
        document.getElementById('hdnAction').value = obj;
    }
</script>
 [HttpPost]
        public ActionResult Index(string actionName)
        {
          ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application.";    
          return View();
        }