HTML5 フォームの検証に関して、2 つの大きな問題があります。
1-このコードを使用して、入力の検証メッセージを変更します
$$('INPUT').each(function(input)
{
input.oninvalid = function(event)
{
event.target.setCustomValidity('');
if (!event.target.validity.valid) event.target.setCustomValidity('Please Fill');
};
}
この方法には大きな問題があります。入力が無効な場合はフォームが送信されるため、エラー メッセージが添付されます。そのため、 new input では検証されません。修正して再度送信しても、メッセージが添付されているため、フォームが送信されません。したがって、 event.target.setCustomValidity('') はメッセージを削除し、フォームは別の送信を必要とします。2つは修正後に提出します。
この動作を修正する方法が見つかりませんでした。
2-これらのツールチップを完全に非表示または無効にしながら、フォーム検証を使用するにはどうすればよいですか? css の無効な疑似クラスと有効な疑似クラスを使用したい場合がありますが、これらのヒントは引き続き表示されます。
送信ボタンでformnovalidateを見つけると、送信する前に各入力の valid.valid を手動で確認できます。より良いアイデアはありますか?