0

フォームに次のような複数のフィールドがあります

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

required ex decimalのようなものを作成して、毎回パターンとカスタム メッセージを記述する必要がないようにすることはできますか?

私はHTML 5を初めて使用するので、質問をより明確にする必要がある場合は助けてください。ありがとうございます。

4

2 に答える 2

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');
}
}
于 2016-11-14T05:29:35.323 に答える
-1

ここの例に基づいて:

$.validator.addMethod('Decimal', 関数(値, 要素) {

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

}, "xxxx.xxx の形式で正しい番号を入力してください");

于 2016-11-14T04:24:28.313 に答える