1

彼らのサイトで実証されているように、jQuery Form Plugin によって処理されるアップロードの進行状況を表示しようとしています。何をしようとしても、アップロードの進行状況を表示する割合を取得できず[jquery.form] state = uninitialized、ファイルのアップロード中に Firebug がコンソールに表示されます。アップロードが完了するとすぐに、Firebug が表示されます[jquery.form] state = loading jquery.form.js (line 904) [jquery.form] isXml=false

これが私のJavascriptです。バックエンドは class.upload.php、www.verot.net/php_class_upload.htm を使用しており、完了すると JSON を返します。

$("#apparatusPhotoUpload").ajaxForm({
    beforeSend: function() {
        //Do things such as disable upload button, switch to default preview image
    },
    uploadProgress: function(event, position, total, percentComplete) {
        var progress = percentComplete;
        $("#uploadProgress").html(progress);
    },
    dataType: 'json',
    success: function(data) {
        //Fire a couple of functions that alter data in the DOM
    }

どんな助けでも大歓迎です!

4

2 に答える 2

1

GitHub ソリューション: 空白のファイル入力でループを終了しない (パッチが含まれています)

マルサップのコメントによると

Added proposed fix to v2.91.

jQuery.form.js バージョン 3.50 をダウンロード

問題は解決しました。

于 2014-05-08T09:10:14.267 に答える
0

新しいプラグインは関連するいくつかのバグを修正したと思います。私は同様の問題を抱えていましたが、最新バージョンのjQuery Form Plugin (バージョン: 3.26.0-2013.01.28) をインストールし、JavaScript で次のようなもの (あなたの例に適合) を使用することで、それを機能させることができました:

$("#apparatusPhotoUpload").ajaxForm({
    beforeSubmit: function() {
        //Do things such as disable upload button
        var progress_bar = $('<div class="progress"><div class="bar" style="width:0;"></div></div>');
        progress_bar.appendTo("#apparatusPhotoUpload");
    },
    uploadProgress: function(event, position, total, percentComplete) {
        var percentVal = percentComplete + '%';
        $('.bar').width(percentVal);
    },
    dataType: 'json',
    success: function(responseText, statusText, xhr, form) {
        //Fire a couple of functions that alter data in the DOM to show responseText
}
于 2013-02-04T22:33:05.973 に答える