0

http://www.hoppinger.com/blog/2010/05/28/file-upload-progress-bar-with-phpapc-and-javascript/で提供されているアップローダーを使用していて、それを1つに適用しました。フォームの 一部であり、進行状況メーターが機能している間は、アップロードが成功しても送信機能は起動しません。

私が使用しているものの完全なコードは以下のとおりです。

JS
get_progress.php
uploader.php

私の知る限り、私の限られた経験では、これは送信を処理する関数です。

postUpload : function(o_data)
{
    // Loop through every input and set json response in hidden input
    this.a_inputs.each((function(o_input)
        {
            var s_name = o_input.get('name');
            var s_value = '';

            if(o_file = o_data.files[s_name])
            {
                s_value = JSON.encode(o_file);
            }


            var o_jsonInput = new Element('input',{'type': 'hidden','name':o_input.origName,'value':s_value}).replaces(o_input);


        }).bind(this));

    // Make form "original" again by purging elements and resetting attributes
    this.revertSubmit();
    this.o_form.submit();
},

this.o_form.submit();送信がではなくthis.form.submit();チェックアウトされていることに気づき、彼はo_form : {}クラスのトップで宣言したので、彼の構文は正しいと思いますが、私には本当の考えがありません。

このプログレストラッカーを実装する前は、フォームは完全に機能していたので、これは非常にイライラしました。

本質的に何がうまくいかなかったのか、私はそれが行方不明;または同様の間違いのような単純なものであると推測することしかできません。

あなたが404提出で得るならば、それはそれが働いたことを意味します。トラブルシューティングのためにページのブロックを一時的に解除しました。

関連性があるかもしれないので、私のサイトはWordPressを使用しています。

4

1 に答える 1

0

APC_UPLOAD_PROGRESSjavascriptがフォームにタグを追加していないことが判明したためjQuery、初期化後に次を追加しました。

<script type="text/javascript">
    jQuery(document).ready(function(){

        var id = jQuery("form").attr('id');

        jQuery("form").submit(function(){

            jQuery(this).append("<input type=\"hidden\" name=\"APC_UPLOAD_PROGRESS\" value=\""+id+"\" />");

        });

    });

</script>

そして今、それはすべて良いです。

于 2012-05-22T00:50:53.293 に答える