我正在尝试在woocommerce checkout中 Build “业务”字段,但仅限于该字段实际显示的情况 .
我创建了一个带有woocommerce_form_field的单选按钮字段,该字段显示两个选项 . 使用javascript我在选中单选按钮时切换'business'输入字段的可见性:
jQuery(document).ready(function () {
$('input[type=radio][name=customer_type]').on('change', function () {
$('.checkout-bedrijfsnaam').slideToggle();
}); });
'business'输入的默认css是:
.checkout-bedrijfsnaam { display:none; }
此外,我使用Woocommerce过滤器'woocommerce_billing_fields'和'woocommerce_shipping_fields'创建了所需的“业务”字段:
$address_fields['billing_company']['required'] = true;
然而,这一切都很顺利:当'业务'字段被切换并且没有显示时,我收到'字段是必需的'警告并且无法提交表单 . 是否有可能使该领域成为必需,但只有当它实际显示时?
我知道必须这样,因为shipping_fields上的字段表现方式相同(未选中复选框时不需要),但我无法理解它 .
1 回答
如果检查只是客户端,那么您可能希望将其从DOM中删除,而不是将其隐藏在
display: none;
中 . 当你需要它时,你再次追加它 . 你已经有了它的切换 .