由Benjamin Keenvalidation自己的function不正常吗?

我正在尝试benjamin的keens RSVvalidation脚本(jquery版本),但是使用自己的function它不起作用。 我的自定义函数返回false但仍然调用oncompletehandler?

$("#testForm").RSV({ onCompleteHandler: myOnComplete, displayType: "alert-one", rules: [ "required,first_name,Please enter your first name.", "required,last_name,Please enter your last name.", "required,email,Please enter your email address.", "valid_email,email,Please enter a valid email address.", "function,testfunct", ] }); function testFunc() { tmpName = $('#tmpName').val(); if (tmpName != '') { //alert ("name has been set"); return true; } else { alert ("Credit card empt"); $('#tmpName').focus(); return false; } }` 

您的自定义function不正确。 预计将返回:

  • validation通过时为true。
  • validation失败时的数组(但不是“false”)。

更多细节请参考其官方文档 ,然后单击项目:“自定义validation规则”

为了使您的函数与RSV脚本正确交互,您的函数必须具有明确定义的返回值。 即:

如果该字段通过您管理的任何测试或测试,则必须显式返回true。 如果测试失败,它必须返回一个数组数组,如下所示:

  return [[node1, "error message1"], [node2, "error message2"], [node3, "error message3"]]; 

或者,如果您的函数只是抛出一个错误:

  return [[node, "error message"]]; 

注意双[[and]]。 这不是一个错字!