2016-11-12 64 views
0

我有多個領域在我的形式像我是否在html5中創建自定義驗證?

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

我可以創造這樣需要小數,這樣我就不必每次都寫入模式和自定義消息

我很第一次使用HTML 5所以請幫助我,如果你需要更清晰的問題讓我知道謝謝

回答

-1

基於示例here

$ .validator.addMethod( '十進制',函數(值,元素){

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

}, 「請輸入正確的數,格式xxxx.xxx」);

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'); 
} 
} 
相關問題