1

ユーザーがフィールドに入力すると、入力したフィールドに対して AJAX 検証を実行するアプリケーションがあります。これはonblur、フィールドのトリガーを使用してトリガーされます。ただし、ユーザーが実際にページから離れているときに、この発火を停止できるようにしたいと考えています。

私の入力フィールドは次のようになります

<input type="text" onblur="checkIt(this.value);" id="name" />

ここで、checkIt 関数は AJAX プロセスを呼び出して入力を検証するだけです。入力が無効な場合、エラーが返され、ページの DIV に表示されます。これはすべてうまく機能しますが、ユーザーが気が変わってページから離れることを決定した場合、移動する前にエラー div が引き続き表示されます。

したがって、私のcheckIt機能では、次のように言うことができるようにしたいと考えています。

ページの場合event = unload、エラーを表示せず、ユーザーが移動できるようにします。

私はOracle APEXを使用しているため、これを行うことができるjavascriptか、JQuery利用可能です

何か案は?

4

2 に答える 2

2

focusoutそして、blur私が望んでいたことをしませんでした-ページがアンロードされる前に、フォーカスされた要素のぼかしイベントをトリガーします

この(作業中の)コードを使用してください:

window.onbeforeunload = function(e){
  $(document.activeElement).blur();
}
于 2015-06-26T22:49:14.680 に答える