1

jQuery と PHP を使用して、動的に作成された長い HTML フォームを投稿しています。「送信」ダイアログが必要で、同じページ (理想的には jQuery ポップアップ) に結果を表示する必要があるため、従来の HTML フォーム送信は使用しません。ファイル入力タイプがアップロードされないことを除いて、私がやっていることはうまくいきます。

これを行う方法はありますか?

これが私のコードです:

jQuery:

    function submitForm(submiturl)
    {
        $.blockUI({ message: "<h2>Submitting...</h2>" }); 

        var form = $('#theForm').serialize();
        var fields = "<?= urlencode(serialize($allFields)) ?>";

        $.ajax({ 
            url: submiturl,
            data: {form: form, fields: fields, extraResults: window.extraResults},
            type: "post", 
            cache: false, 
            complete: function() { 
                // unblock when remote call returns 
                $.unblockUI(); 
            }, 
            error: function (xhr, ajaxOptions, thrownError) {
                alert("ERROR");

            },
            success: function( strData ){
                alert("SUCCESS:  " + strData);

            }

        }); 
    }
4

1 に答える 1

0

フォームで言及enctype="multipart/formdata"し、関数でこのコードを使用します

 var uf = //get form id;
 var fd = new FormData(uf);     
 $.ajax({
   type: "POST",
   url: "xxxxx.php",
   data: fd,
   processData:false,
   contentType: false,
   success: function(msg){ }
 });
于 2013-05-22T13:49:54.147 に答える