因此,在一个相当大的应用程序中,我有一个使用HtmlHelper的表单“Product1”的视图。
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
...etc
}
这将呈现:
<form action="/Products/Product1?__RequestVerificationToken=PYs...
...
</form>
这很有效。
但是,如果我将其更改为(或任何类似的)
@using (Html.BeginForm(null, null, FormMethod.Post, new {onsubmit = "return validationCheck()"}))
...etc
呈现
<form action="/Login?action=Product1&controller=Products" method="post" onsubmit="return validationCheck()">
传递给BeginForm的任何参数会强制它返回登录屏幕。我的理解是输入空值与使用默认值相同。我已经为BeginForm()尝试了很多参数组合,所有这些参数都会将我发送到我的登录屏幕。
我知道这里的信息有限(对不起),但我正在寻找一个原因,说明为什么它会有所不同。使用默认参数,我认为它应该与没有任何参数的情况完全相同。
我真正想要工作的是validationCheck,所以如果你有一个可以做到这一点的解决方法,我也很想听到它。