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