2012-07-13 62 views
6

javacriptを使用してファイルを読み込むためのイベントコールバックを設定する場合、file.onchangeを使用できますが、ユーザーがアップロードをキャンセルしたときにイベントを設定する方法はありますか?JavaScriptのファイルアップロードのキャンセルのためのイベント

+0

あなたのユースケースに言及している場合、おそらく、誰かが代替案を提案することができます。 –

+0

リダイレクトせずにファイルを送信したいだけなので、iframeを使用する必要があります。ユーザーがをクリックした直後にiframeを作成し、ユーザーがパネルを使用し終わった直後にiframeを消したいと考えています。それはアイデアです – Dagon

+0

ええと、ユーザーが何かを選択するとすぐにアップロードを開始したいのですか?私の提案は、ユーザーにファイルを選択させ、そのすぐ隣にアップロードボタンを置くことです。次にiframeをクリックして作成することができます。そうすれば、ファイルセレクタの値を知ることができます。明らかにnilなら、何らかのバリデーションメッセージを表示することができます。 –

答えて

1

ファイル入力モーダルのAPIはありません。また、ユーザーがブラウザを閉じると、コードはもう実行されません。

もちろん、与えた例を検出できるようにするwindow.onunloadメソッドがあります。

私が考えていることは、何も選択しなければfile.value.length0になるということです。

+0

すみません。それはブラウザではありません。私が意味するのは、ファイルブラウズパネルです。 要素 – Dagon

+3

をクリックすると開くことができます。残念ながら、キャンセルイベントはありません。私がそれを思いついたのは、何も選択されなければ、file.value.lengthは0になるということだけです。残念ながら、ユーザーがonchange以外のモーダルを終了したときに検出するものはありません。アウトは、ファイルが選択されたときにのみ起動します。 –

+0

残念ながら、値はファイルパネルのポップアップの前後で変わりません。 setintervalを指定しても、ポップアップをキャッチできません。パネルポップアップ直後に他の値が変更されると思いますか? – Dagon

0

"onfileopendialogboxclose"または "onfileselectioncancel"イベントはまだサポートされていません。プラス、ファイル選択ダイアログボックスが要素ではなく、html要素

+0

私はあなたの質問に答えたとは思わないでしょうか? 2つの存在しないイベント名を作り、私の情報を使用しているのは本当にその質問に答えるものではありません。 –

+0

完了........... – Dagon

+0

ありがとうございました!質問をアップして、あなたはいくつかのポイントを得るでしょう。 –

-3

としてcatchedすることはできませんそれはjQueryを使って非常に簡単です:

$("#fileInputId").change(function() { 
    //implement your code here 
}); 
+2

これは、OPが求めている問題を解決しません –

関連する問題