Javascript 三个按钮正在从控制器校准相同的操作方法-确定调用哪个方法

Javascript 三个按钮正在从控制器校准相同的操作方法-确定调用哪个方法,javascript,c#,asp.net-mvc,razor,view,Javascript,C#,Asp.net Mvc,Razor,View,我正在开发小型MVC应用程序,在我看来, 共有3个按钮,它们都调用相同的操作,下面是按钮的定义: <button type="submit" class="btn btn-success pull-right" id="btnSave" value="tabOne"><i class="fa fa-save"></i> Submit changes </button> 伙计们,差不多就这些了,我有选项卡控件,3个按钮,它们提交相同的动作方法,我需

我正在开发小型MVC应用程序,在我看来, 共有3个按钮,它们都调用相同的操作,下面是按钮的定义:

<button type="submit" class="btn btn-success pull-right" id="btnSave" value="tabOne"><i class="fa fa-save"></i> Submit changes </button>
伙计们,差不多就这些了,我有选项卡控件,3个按钮,它们提交相同的动作方法,我需要弄清楚哪一个调用了一个方法

谢谢各位
干杯

在事件处理程序中,您将获得一个
事件
作为参数,以获取与所发生事件相关的特定信息。您要查找的特定属性是


为了简洁起见,我使用jQuery绑定事件,在本例中,它与vanilla JS之间的差异是忽略的

为具有不同值的按钮提供一个
名称
属性

<button type="submit" name="clickedFrom" id="btnSave" value="tabOne" >Tab one</button>
<button type="submit" name="clickedFrom" id="btnSave2" value="tabTwo" >Tab Two</button>

提交表单时,浏览器将发送请求正文中clickedFrom键中clicked按钮的值,除非您通过javascript传递参数,否则我认为这是不可能的


为什么不直接传递值属性“tabOne”、“tabTwo”或“tabThree”?

我是否应该将此字符串clickedFrom作为可空参数,以防有一天我需要从其他视图调用它,而我不会将任何内容传递到我的编辑操作方法中,或者可以将其保留为空,我可以检查一下(clickedFrom!=null){//做点什么}?还有一些类型不是,因此,如果您调用示例编辑方法,但没有为clickedFrom提供值,情况可能会很危险?:D不确定您所说的情况可能会很危险。但简而言之,您将检查clickedFrom变量的值,并根据该值进行操作。如果您没有为输入提供值名为“clickedFrom”的元素将为空。因此,您的代码应该处理它(如果不是空的,请执行此操作,否则请执行此操作(您的条件重定向)),请投票支持这样一个很好的帮助!:)非常感谢我的朋友,这里我有一些以前的其他问题,所以您可以看一看:
// Taken from Event.target MDN, this will hide the caller of the event
$("#btnSave").click(function(event) {
    event.target.style.visibility = 'hidden';
});
<button type="submit" name="clickedFrom" id="btnSave" value="tabOne" >Tab one</button>
<button type="submit" name="clickedFrom" id="btnSave2" value="tabTwo" >Tab Two</button>
[HttpPost]
public ActionResult Edit(ArticleEditViewModel model,string clickedFrom)
{
   // to do : Check value of clickedFrom and do something
   // to do : return something
}