0

我正在使用多个提交按钮的以下解决方案(如何最好地实现 Save | Save and Close | Cancel form actions in ASP.NET MVC 3 RC ),以允许从我的 MVC 表单中取消和保存:

<form action="Xxxx" method="post" onsubmit="return validatePost()">
...
<input type="submit" name="actionType" value="Save" />
<input type="submit" name="actionType" value="Cancel" />
</form>

使用称为 onsubmit 的 javascript:

function validatePost() {
    if(Blah blah){
        return true;
    }
}

如果单击“保存”,我只想执行此 javascript 验证,但无法判断从 javascript 中单击了哪个按钮。

我尝试使用document.forms[0].elements["actionType"].value但无法获取 actionType 值,因为表单上有多个名为 actionType 的项目。

任何人都可以帮忙吗?

谢谢

4

2 回答 2

1

您可以使用idhttp://jsfiddle.net/7p5N5/

<form method="post">
<input id="save" type="submit" name="actionType" value="Save" />
<input type="submit" name="actionType" value="Cancel" />
</form>

function validate() {
    alert('Validate');
    return false; // cancel click, true will submit
}

$("#save").click(function () {
    return validate();
});

如果不想使用id,可以使用$('input[name="actionType"][value="Save"]')选择保存按钮

于 2013-03-27T16:36:04.147 回答
0

您是否能够仅收听“保存”输入的 onclick 事件并让它使用您的 validatePost 函数。

然后,您可以使用不同的功能来单击“取消”以执行适当的操作。

于 2013-03-27T16:31:07.503 回答