如果存在validation错误,则触发事件?
我需要为表单validation失败的任何情况添加句柄。
我已经读过这个 ,这解释了我必须添加一个处理程序,如下所示:
$('form').bind('invalid-form.validate', function () { console.log('form is invalid!'); });
但是,当我尝试提交表单时,此事件才会触发。
我需要处理一个事件,该事件在表单经过后validation时被触发(即元素失去焦点等)。
我想要实现的是,我有一个大型(~50个字段),并且它在Bootstrap选项卡中分割。
我想,当有任何新的validation失败或成功时,在包含无效/有效元素的选项卡的选项卡标题中设置或清除错误类。 PS我的问题不在于如何在选项卡中设置这些类。 我只想知道要处理哪些事件,以便在整个表单中的每个validation状态更改时得到通知。
我需要在表单validation失败的任何情况下添加处理程序。
$('input, textarea, select').on('focusout keyup', function() { if ($('form').valid()) { // do something } });
我想,当有任何validation错误时,在包含无效元素的选项卡标题中设置错误类。
嗯,这与你最初提出的问题有点不同。 (忽略我答案的前半部分。)
使用highlight
和unhighlight
选项以及jQuery DOM遍历来设置和取消设置您希望的DOM中的任何类。 当某些东西无效时highlight
,当它变为有效时,则highlight
。 以此答案为例。
使用.setDefaults()
方法设置这些选项,因为您使用的是unobtrusive-validation
插件,并且无法直接访问.validate()
方法。