0

缠绕在这个轴上。所以我在表单中有几个按钮

@using (Html.BeginForm("Edit", "RunLogEntry", FormMethod.Post, new { enctype = "multipart/form-data" }))
{

<input id="create" class="art-button" type="submit" value="Save" />
<input id="create" class="art-button" type="submit" value="Cancel" />    
}

我想要做的是当用户点击取消按钮时,它应该点击一个不同的操作方法,这与开始表单中的不同。我可以在表单之外有取消按钮,但这不是一个选项,因为它的物理位置需要靠近表单的其余控件。或者我应该使用链接按钮而不是提交类型?对此有任何想法将不胜感激。

4

2 回答 2

4

如果您不需要在“取消”上发布任何数据,那么只需使用带有Html.ActionLink方法的链接按钮,例如:

@Html.ActionLink("Link Text", "MyAction", "MyController")

您还可以使用 javascript 来更改表单的操作:

document.myform.action ="/MyController/MyAction";

...这当然需要您使用 javascript 处理取消按钮的单击事件

于 2012-06-15T18:28:50.870 回答
1

正如musefan所说,您可以将其设为链接

如果你想保留你的按钮,你将不得不在这个按钮上使用一些 jQuery。

第一个解决方法是将“取消”按钮的 ID 更改为“取消”而不是“创建”(每个元素都应该有一个唯一的 ID)。

<input id="cancel" class="art-button" type="submit" value="Cancel" />  

然后您需要将单独的单击事件绑定到“取消”按钮以调用不同的操作。

$("#cancel").click(function(e) {
    e.preventDefault(); //Keep form from posting
    window.location.href = "REDIRECT URL";

    //If I want to post
    $.post("URL", data { ... });
});
于 2012-06-15T18:33:11.347 回答