フォームが送信されたら、ボタンを有効にしようとしています。 ボタンを有効にできますが、フォームがプロセスを完了してからボタンを有効にするまで待つ必要があります。私はsetTimeout()
を使用して数秒待つことができますし、ボタンを有効にしますが、私はそれを望んでいません。フォームが処理を完了したら、ボタンを有効にしておきたい。これが可能なユースケースかどうかはわかりません。フォームをJavaScriptを使用して送信した後にボタンを有効にする方法
フォーム:
<input type=submit id="myButton" class="esignReports" value="Export E-Sign Information" onclick="disableReportButton(), enableReportButton()"/>
JS:
function disableReportButton() {
document.getElementById('viewIntegrationReport').submit();
document.getElementById('myButton').disabled = true;
document.getElementById('myButton').value = 'Please wait';
}
function enableReportButton() {
document.getElementById('myButton').disabled = false;
document.getElementById('myButton').value = 'Export E-Sign Information';
}
感謝。
私はあなたが達成したいかについて、特に明確ではありませんよフォーム。 UIでサンプルユースケースを教えてもらえますか? – Xiaoerge
Ji私がお勧めするのは、プロセスのステータスをn秒ごとにチェックすることです。プロセスはステータスを返信し、そのチェックを行う関数を作成し、その関数を実行するためにsetTimeoutを使用します。ステータスの関数内ではまだ処理中ですが、同じ関数を再度呼び出すsetTimeoutを使用すると、処理が完了するまで実行されます。再試行でも確認することをお勧めします。そうでない場合は、無限ループになります。 –