ASP.NET MVC 3、Ajax.BeginForm、OnBegin和表单验证

ASP.NET MVC 3、Ajax.BeginForm、OnBegin和表单验证,ajax,asp.net-mvc-3,Ajax,Asp.net Mvc 3,我正在使用Ajax.BeginForm,并希望将参数传递给使用OnBegin调用的函数。下面是两段代码片段 new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "DataEntrySummary", OnBegin = "ValidateForm(11,55)" } function ValidateForm(minAge, maxAge) {return false;} 参数被正确

我正在使用Ajax.BeginForm,并希望将参数传递给使用OnBegin调用的函数。下面是两段代码片段

new AjaxOptions
{
   HttpMethod = "POST",
   UpdateTargetId = "DataEntrySummary",                
   OnBegin = "ValidateForm(11,55)"
}

function ValidateForm(minAge, maxAge) {return false;}
参数被正确地传递给ValidateForm函数,但该函数始终返回true

如果我取出参数并使用

OnBegin = "ValidateForm()"
function ValidateForm() {return false;}
它工作完美,返回false。我是否遗漏了某些内容或此处不允许使用参数或

牛津大学-提前谢谢


PS-我不能使用C#属性和不引人注目的验证,原因很好(这些是代码片段)。

我不确定CrazyCoderz的评论是如何关联的,但它是如何关联的

我发现函数名后面的任何内容都会导致ajaxobegin返回true。这包括OnBegin=“ValidateForm()”。[上面括号中我的错误]


我现在正在实现一个“变通方法”——两种方法之一——要么编写自己的Ajax调用,要么从表单的测试输入元素读取属性,以获得我想要的值。因此,感谢CrazyCoderz让我走上解决方案的轨道。

我不确定CrazyCoderz的评论有何关联,但它与如何关联

我发现函数名后面的任何内容都会导致ajaxobegin返回true。这包括OnBegin=“ValidateForm()”。[上面括号中我的错误]

我现在正在实现一个“变通方法”——两种方法之一——要么编写自己的Ajax调用,要么从表单的测试输入元素读取属性,以获得我想要的值。因此,感谢CrazyCoderz让我走上解决方案的轨道。

使用

OnBegin = "return ValidateForm(11,55)"

function ValidateForm(a,b) {
    return a<b;
}
OnBegin=“return ValidateForm(11,55)”
函数ValidateForm(a,b){
返回一个使用

OnBegin=“return ValidateForm(11,55)”
函数ValidateForm(a,b){
归还