5

私はhtmlを持っています:

<form id="fileuploadform">
    <input type="file" id="fileupload" name="fileupload" />
</form>

そしてjquery:

$(':file').change(function(){
    var file = this.files[0];
    ...
});

問題は、ファイルの選択が以前に行われた選択と異なる場合にのみ変更機能が起動することです。もちろん、それが「変更」イベントの意味です。何があっても、ファイルダイアログを閉じて関数を呼び出す必要があります。

「select」イベントを使用してみました-呼び出されません

私も試しました:

$(':file').bind('dialogclose', function(event) {
    alert('closed');
});

と:

$(':file').live("dialogclose", function(){
    alert('closed1');
}); 

それらも機能しませんでした。

4

3 に答える 3

6

これが古い投稿であることはわかっていますが、「変更」の代わりに「入力」を使用してみてください。私のために働いた。:)

$('#fileupload').on('input', function () {
  alert('Hi');
});
于 2015-09-16T18:54:21.143 に答える
6

このコードを使用してみてください。

$('#fileupload').on('change', function () {
    alert('Hi');
    //do your function.
});

この関数は、別のファイルを選択した場合にのみ呼び出されます。

于 2013-05-21T16:28:30.403 に答える