我在 Rails 应用程序中使用 client_side_validations gem 进行表单验证,它在提交时为表单添加了一些功能来进行验证,我需要自己执行自定义验证,这超出了 client_side_validations gem 的功能,所以当我添加它使用form.submit = function
它有效,两个验证都被调用。但是我不明白如何决定提交或不提交表单,如果两个函数都返回 false 那么它应该提交,但看起来即使其中一个返回 true 表单也无需等待即可提交对于另一个返回它的值,我该如何处理这种情况,我不能将它变成一个函数,因为这意味着将我的代码放入我永远不想做的 client_side_validations JavaScript 文件中?
任何想法和帮助表示赞赏。
这是我的自定义验证代码供参考:
$('#new_business').submit ->
that = $('#business_referrer_code')
if(that.attr("validated") == "true")
return true
else
code = $('#business_referrer_code')
$.ajax '/representatives/validate_code',
type: 'GET'
dataType: 'json'
data: "code=#{code.val()}"
success: (data, textStatus, jqXHR) ->
if(data.error)
that.after("<label class='message'> Invalid Reference Code</label>")
else
that.attr("validated", true)
that.submit()
false
true
由 client_side_validations 自动生成的其他代码是我无法更改的。