以下は、フォームが Chrome、FF、および Safari で送信されるのを防ぎますが、IE や Opera では送信されません。
JavaScript:
function validateAll() {
var fFirstname = document.getElementById('firstname');
if (fFirstname.value == "") {
invalidFirstname.style.display = "block";
firstname.className = "Standard-Req";
firstname.focus();
alert('Please fill out First Name.');
return false;
}
HTML:
<form name="Contact" action="somefile.php" method="post" onSubmit="return validateAll();">
<input type="text" name="firstname" class="Standard" id="firstname">
<input type="submit" name="Submit" value="Send Message" class="btn-Standard">
</form>
ここで、ALERT の前に 3 つのコマンドを削除すると、IE と Opera で動作します...次のように:
function validateAll() {
var fFirstname = document.getElementById('firstname');
if (fFirstname.value == "") {
alert('Please fill out First Name.');
return false;
}
クラスを変更し、エラー アイコン (invalidFirstname) を表示し、データが入力されていない場合にフィールドにフォーカスできるようにしたいのですが...これは可能ですか??