Foundation 6 Abide-如何实现formnovalidate



我有一个使用Abide的表单。表单有两个按钮,都是type="submit",但其中一个具有formnovalidate属性集。此按钮用于"上一步",因为它接受用户填写并提交的表单,将用户带到表单的上一步。

问题是,当用户单击"取消"时,遵守验证仍然有效,阻止用户返回,直到他填写了当前步骤中的所有字段。HTML5验证具有formnovalidate属性,正好适用于此用例。单击取消按钮时,是否有方法"忽略/跳过"遵守验证?

在github上发布链接:https://github.com/zurb/foundation-sites/issues/11426#issuecomment-441956255

在github问题中解决。目前,基金会对此没有本地支持。解决方法是在FoundationJS中重写提交处理程序。我是这样做的:

.on( "submit.zf.abide", function( e ){
var $btn = $(document.activeElement);
if (
/* there is an activeElement at all */
$btn.length &&
/* it's a child of the form */
t.$element.has($btn) &&
/* it's really a submit element */
$btn.is('[type="submit"]') &&
/* it has a "formnovalidate" attribute */
$btn.is('[formnovalidate]')
) {
return true;
}else{
return t.validateForm()
}
})

最新更新