0

jQueryで火を送信する際に問題があります:

$(document).ready(function() {
                    $('#zestaw-edytuj-form').submit(function(e) {
                        e.preventDefault();
                        $('#ip_dilmarbundle_zestawytype_path').uploadify('upload');
                    });

                    $('#ip_dilmarbundle_zestawytype_path').uploadify({
                        'swf'      : '{{ asset("js/uploadify/uploadify.swf") }}',
                        'uploader' : '{{ path('upload-image') }}',
                        'folder'   : '{{ asset("images") }}',
                        'auto'     : false,
                        'onUploadSuccess' : function(file,data,response) {
                            $('#ip_dilmarbundle_zestawytype_zdjecie').attr('value',file.name);

                        },
                        'onUploadComplete' : function(file) {
                            $('#zestaw-edytuj-form').submit();
                        },
                        'onUploadError' : function(file, errorCode, errorMsg, errorString) {

                        },
                    });
                });

まず、送信ボタンをクリックした後、デフォルトを防止して画像をアップロードする必要があります。アップロードが完了したら (onUploadComplete)、通常はフォームを送信する必要があります。しかし、画像がアップロードされると、submit は起動しません。私はそれで何ができますか?

4

2 に答える 2

0

これを試して:

EDITED : これも修正しました: 'onUploadError : func(){}' の最後にある末尾の 。

$(document).ready(function() {
    var ready = false;

$('#zestaw-edytuj-form').submit(function(e) {
    if(!ready){
        e.preventDefault();
        $('#ip_dilmarbundle_zestawytype_path').uploadify('upload');
    }
});

$('#ip_dilmarbundle_zestawytype_path').uploadify({
    'swf'      : '{{ asset("js/uploadify/uploadify.swf") }}',
    'uploader' : '{{ path('upload-image') }}',
    'folder'   : '{{ asset("images") }}',
    'auto'     : false,
    'onUploadSuccess' : function(file,data,response) {
        $('#ip_dilmarbundle_zestawytype_zdjecie').attr('value',file.name);

    },
    'onUploadComplete' : function(file) {
        ready = true;
        $('#zestaw-edytuj-form').submit();
    },
    'onUploadError' : function(file, errorCode, errorMsg, errorString) {

    }
});
});
于 2013-04-17T06:45:51.583 に答える
0

送信ループが機能する場合、ここに送信ループの式があると思います。いくつかの提案。ファイルのアップロード用と入力データ用の 2 つのフォーム (別のフォーム タグ) にフォームを分けることができます。ファイルのアップロードが完了したら、データ フォームを送信します。ただし、おそらく最善の方法は、uploadify を使用して他の追加データをパラメーターとして送信できるため、ファイルのアップロードを処理する同じスクリプトで受信データも処理できるようにすることです。次のようなフォーム パラメータを取得できます。var myform = $(this).serializeArray()このパラメータは、uploadify() 構成パラメータでformData設定できるようになっていると思います。'formData':myform(参照: Uploadify サイトは現在ダウンしています http://www.uploadify.com/documentation/uploadify/formdata/ .

于 2014-07-21T13:18:14.647 に答える