問題が、検証エラーの通知を表示した後も一部のイベントハンドラーがデータを送信していることである場合は、イベントのそれ以上の処理を防ぐために、表示後alertにイベントハンドラー関数を返す必要があります。falsealert
@Bergiが彼のコメントで指摘しているように、JQueryまたは別のフレームワークを使用している場合は、stopPropagation()または同等のものを使用する必要があるかもしれません。見る
アップデート
return false投稿されたコードを見て、関数内で行われていることに注意することが重要かもしれませんIsFieldEmpty。これは、falseがの戻り値であることを意味しますIsFieldEmpty。これと同様の方法でデータを送信する場合は、次の点に注意してください。
<input type="submit" onclick="IsFieldEmpty()">
IsFieldEmptyfalseを返しますが、イベントハンドラーは返しません。その場合は、次のように変更する必要があります。
<input type="submit" onclick="return IsFieldEmpty()">
検証に合格するとIsFieldEmpty戻ります。true
function IsFieldEmpty() {
var txtAgent_Name = document.getElementById("<%=txtAgent_Name.ClientID %>");
if (txtAgent_Name.value == "") {
alert('Please Enter Agent Name');
txtAgent_Name.focus();
return false;
}
return true;
}