重力表格电话号码字段应该验证电话号码,但如果字段选项设置为“国际”,则表单提交字段中的数据是标准字符。
下面的代码挂钩到我的表单和特定字段,但是我遇到了如何检查字段字符串是否为数字的问题。
// add custom validation to the gravity forms plugin to validate "phone number" field
add_filter("gform_field_validation_2_4", "custom_validation", 10, 4);
function custom_validation($result, $value, $form, $field){
if($result["is_valid"] && intval($value)){
$result["is_valid"] = false;
$result["message"] = "Please enter a valid telephone number";
}
return $result;
}
感谢您的建议和反馈。
谢谢, JB。
答案 0 :(得分:3)
为什么不尝试使用正则表达式?它适用于这种情况。例如(未经测试):
// add custom validation to the gravity forms plugin to validate "phone number" field
add_filter("gform_field_validation_2_4", "custom_validation", 10, 4);
function custom_validation($result, $value, $form, $field){
if(!preg_match('~^\d+$~', $value)){
$result["is_valid"] = false;
$result["message"] = "Please enter a valid telephone number";
}
return $result;
}