问题描述
我试图在结账时为我的客户禁用 Chromes 自动填充/下拉建议。我有一个地址验证工具,但客户仍在使用 Chrome 下拉建议,有时,街道名称和其他详细信息被遗漏,所以我不得不手动联系客户以获取信息。
我尝试了以下代码来删除帐单地址的自动完成功能,因为文本是输入类型,但没有成功。
add_filter( 'woocommerce_form_field','change_autofill',1,1 );
function change_autofill( $field) {
$agent = $_SERVER['HTTP_USER_AGENT'];
if (strpos($agent,'Firefox') !== false) {
$field = str_replace('autocomplete="text"','autocomplete="off"',$field);
return $field;
}
else {
$field = str_replace('autocomplete="text"','autocomplete="none"',$field);
return $field;
}
}
解决方法
下面使用此处提供的属性的解决方案
https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete
/* Disable autofill address */
add_filter( 'woocommerce_form_field','change_autofill',1,1 );
function change_autofill( $field) {
$agent = $_SERVER['HTTP_USER_AGENT'];
if (strpos($agent,'Firefox') !== false) {
$field = str_replace('autocomplete="address-line1"','autocomplete="off"',$field);
return $field;
}
else {
$field = str_replace('autocomplete="address-line1"','autocomplete="none"',$field);
return $field;
}
}