我的目标是在用户开始输入邮政编码后显示用于填写电子商务结帐地址的字段。
为此,我在下面编写了这段 JS 代码
<script>
window.onload = function(){
document.getElementById('billing_postcode').onclick = function(){
//console.log('Hello world');
document.getElementById('billing_address_1_field').element.style.setProperty("display", "block", "important");
document.getElementById('billing_address_2_field').element.style.setProperty("display", "block", "important");
document.getElementById('billing_billing_number_field').element.style.setProperty("display", "block", "important");
document.getElementById('billing_city_field').element.style.setProperty("display", "block", "important");
document.getElementById('billing_state_field').element.style.setProperty("display", "block", "important");
}
}
</script>
这是我需要覆盖的 CSS
#billing_address_1_field {
display: none !important;
}
#billing_address_2_field{
display: none !important;
}
#billing_billing_number_field{
display: none !important;
}
#billing_city_field{
display: none !important;
}
#billing_state_field{
display: none !important;
}
我在控制台上收到此错误
Uncaught TypeError: Cannot read property 'style' of undefined
at HTMLInputElement.document.getElementById.onclick ((index):384)
document.getElementById.onclick @ (index):384
预先感谢您的帮助!
答案 0 :(得分:0)
也许尝试从每个“setProperty”语句中删除“元素”。
即:document.getElementById('billing_state_field').style.setProperty("display", "block", "important");