私はファイルアップロードシステムを持っています。アップロードボタンがクリックされた後、ファイルはAJAXを介してアップロードされます。ファイルのアップロード中に、[画像の選択]ボタンにあるクリック機能を無効にしたい。現在、これはファイル選択ボタンのクリック機能です。
$(document).ready(function() {
$("#file-button").click(function() {
$('#file').trigger('click');
});
});
これは正常に機能しますが、XmlHttpRequestの進行フェーズでクリック機能を無効にし、サーバーから200の応答を受け取ったときにクリック機能を再度有効にします。私は試しましたが、Chromeでは正常bind()
にunbind()
動作しますが、Firefoxでは、アップロード中にボタンをクリックできません。これは私が望むものであり、サーバーから応答を受け取った後、ボタンは再び有効になりますが、 Firefoxの2つのファイル選択ダイアログウィンドウが同時に開きます。これは上記の関数が原因であり、私は。を使用して関数を再度バインドしますbind()
。クリックイベントのコード(機能)を再入力せずにボタンを有効にしてから無効にする方法について誰かが提案を持っていますか?
このようなものが望ましいでしょう:
$('#file-button').disable();
$('#file-button').enable();
on()
とを試しましたが、off()
どちらも機能しないようです。