可选字段验证
Optional Field validation
我在JavaScript表单验证方面遇到了一些问题。
我的HTML代码中有一些可选字段。提交时,它们不需要填写,但如果用户提供了一些输入,则必须进行验证。例如,我有一个可选的电话号码字段。如果用户提供了一个输入,那么我需要检查它们是否都是数字。
我怎么能那样做?
只有当字段值满足某些前提条件时,才需要调用验证代码,在这种情况下:如果字段有值(通过测试字符串值的length
属性进行检查):
var fieldValue = document.getElementById("someInput").value;
if( fieldValue.length > 0 ) {
if( someValidationFunction( fieldValue ) ) alert("Field is invalid");
}
是什么阻止你使用HTML5自己的验证?
<input type="tel" pattern="[0-9]+" />
不需要JavaScript,可以在所有现代浏览器上使用。
关于安全性的注意事项:出于安全考虑,请不要依赖客户端验证,因为它们可能会被禁用。所有验证都应该也在服务器端完成。
您可以将自定义方法绑定为表单中提交操作的回调
<form onSubmit="return customValidation()>
在方法中进行验证。
function customValidation()
{
//code to test fields
fieldToValidate = document.getElementById("field-id")
//validate the field
}
如果需要更安全的答案,则不能使用其他答案;你不应该用JavaScript这样做,因为如果用户出于某种原因在浏览器中关闭了它(或者他们故意关闭了它),那么表单仍然不会得到验证。相反,您需要在服务器上使用PHP来完成此操作。在表单发送到的服务器上,您需要获取与表单一起发送的查询字符串($_GET['phonenumber'];
),并查看它是否是一个数字(int intval ( mixed $phonenumber )
)。如果不是数字,则应返回NaN。
相关文章:
- 为什么regex只验证字段中的一个字符,而不是所有输入的字符
- 验证字段名称 添加 与 使用 jquery 验证
- Jquery验证字段是否包含逗号
- jQuery验证字段名包含方括号的组
- 如何使用display验证字段:使用Parsley JS没有
- 滚动至联系人表格7中的已验证字段(wordpress)
- 在php中验证字段时,java脚本不起作用
- 字段验证:字段需要 JavaScript 正则表达式
- 挖空验证:如何在按钮单击时验证字段,而不是在输入更改时验证字段
- jQuery:在提交之前验证字段(多步骤表单)
- 禁用表单提交,直到使用 jQuery 验证字段
- JavaScript 单选按钮选择验证字段
- 尝试使用 jQuery - 自定义函数动态验证字段
- 验证字段中的jQuery布尔值问题
- 为什么我的表单没有't验证字段
- Javascript未验证字段
- 输入字段模糊时,验证字段,如果无效则取消模糊事件
- 更改时验证字段-datetimepicker
- 使用BootstrapValidator重新验证字段
- Jquery动态验证字段