我在html5中创建自定义验证吗?

时间:2016-11-12 13:21:54

标签: html html5 user-interface html5-validation html-components

我的表单中有多个字段,如

<input type="text" pattern="[0-9]+([\.,][0-9]+)?" step="any" oninvalid="setCustomValidity('Enter decimal value')" required>

我可以创建类似必需 ex 十进制的内容,这样我就不必每次都会编写模式和自定义消息

我是第一次使用html 5所以请帮助我,如果你需要更清晰的问题,请告诉我,谢谢

2 个答案:

答案 0 :(得分:0)

你可以这样做,

  • 如果您有许多具有相同模式的字段,您可以为所有这些字段指定相同的类名称,或为所有这些字段指定相同的名称,
  • 为了将所有这些类型的字段识别在一起,有必要执行上述操作,例如,

HTML代码:

<input type="text" step="any" class="patternText" oninvalid="setCustomValidity('Enter decimal value')" required>

JS代码:

var patternFields=document.getElementByClassName("patternText");
for(var i=0;i<patternFields.length;i++)
{
patternFields.pattern="[0-9]+([\.,][0-9]+)?";
patternFields.oninvalid = function(event) {
event.target.setCustomValidity('Username should only contain lowercase letters. e.g. john');
}
}

答案 1 :(得分:-1)

基于示例here

$。validator.addMethod('Decimal',function(value,element){

return this.optional(element) || /^\d+(\.\d{0,3})?$/.test(value); 

},“请输入正确的数字,格式为xxxx.xxx”);