2017-01-07 3 views
2

入力タイプがurlのhtml5では、有効なurlのデフォルトルールは何ですか?また、カスタムパターン属性も指定すると、検証のデフォルトルール?例えば次の行では、属性ovrerrideにデフォルトルールのパターンを適用しますか? the requirements in the HTML specパーhtml5入力タイプのurlまたはemailに組み込まれたデフォルトの検証をオーバーライドできますか?

<input type="url" name="website" pattern="https?://.+" title="Include http://">

+1

答えはhttps://developer.mozilla.org/en/docs/Web/HTML/Element/inputです。 –

答えて

2

、はい、pattern値は、要素の入力タイプのデフォルトの検証要件に優先します:input要素が指定pattern属性を持ち、属性の場合

を値が、 "u"フラグのみが指定されたJavaScript正規表現としてコンパイルされると正常にコンパイルされ、結果の正規表現は要素のコンパイル済みパターンの正規表現になります。

制約バリデーション:要素の値は空の文字列ではなく、要素のいずれかmultiple属性が指定されていないか、それはそのtype属性の現在の状態、与えられた入力要素には適用されません、そして要素がを持っている場合コンパイルされたパターンの正規表現が、その正規表現が要素の値の全体と一致しない場合、その要素はパターンの不一致を受けています。

ブラウザでスニペットを試してみてください。たとえば、あなたがそのコントロールにftp://fooを入力した場合、ブラウザはあなたに何かのようにというメッセージを与えるだろう、「要求された形式に一致:は、httpを含める://」。

関連する問題