WooCommerce结账触发所有字段的验证

3

我正在尝试触发woocommerce中整个结账表单的验证,并根据是否存在验证错误来执行某些操作。

不幸的是,我没有成功。 有人有什么想法吗?

编辑: 更具体地说,当提交woocommerce结账表单时。 我想检查所有运输字段是否有效,但阻止提交表单,因为我想进一步处理该表单数据(但仅在数据有效时)。


我在谈论的是Woocommerce结账页面,对于使用Woocommerce的人来说应该非常熟悉。无论如何,我会进行更新。 - heraphim
你解决过这个问题吗?我期望 $('form.checkout').trigger('validate') 能起作用,但实际上并没有。在 Chrome 开发工具中,验证函数没有被执行。非常令人困惑。 - izb
1
你好,我成功地找到了所有带有“validation-required”类的输入,并在它们上触发了.validate操作,验证将运行,然后你可以寻找带有“woocommerce-invalid”类的输入,这将是你判断某些内容是否无效的指示。请确认一下我告诉你的类名是否正确,我不太确定。如果你还是没能解决问题,请给我留下另一个内容,我会查看过去的代码并向你展示具体的做法。 - heraphim
1
我解决了,谢谢 - 我做了类似的事情。 - izb
1个回答

3

评论中提供了很好的提示。下面是实际可用的代码,可节省未来人的时间:

// Trigger the validation of the fields (you can adjust and pick which fields are validated)    
jQuery('.validate-required input, .validate-required select').trigger('validate');

// Get which fields have failed validation
jQuery('.woocommerce-invalid-required-field').each(function(index, element){
    console.log(element.id)
})

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接