1

このスクリプトを使用して、POST コンテンツを渡します。

<script type="text/javascript">  
// <![CDATA[  
document.observe('dom:loaded', function() {  

    function sendForm(event){  
        // we stop the default submit behaviour  
        Event.stop(event);  
        var oOptions = {  
            method: "POST",  
            parameters: Form.serialize("standardform"),  
            asynchronous: true,  
            onFailure: function (oXHR) {  
                $('feedback').update(oXHR.statusText);  
            },  
            onLoading: function (oXHR) {  
            $('feedback').update('Enregistrement en cours ... <img src="images/throbber.gif" title="Loading..." alt="Enregistrement..." border="0" />');  
            },                            
            onSuccess: function(oXHR) {  
               $('feedback').update(oXHR.responseText);  
            }                 
        };  
        var oRequest = new Ajax.Updater({success: oOptions.onSuccess.bindAsEventListener(oOptions)}, "enregistre-site-marque.php", oOptions);             
    }  
    Event.observe('submitButton', 'click', sendForm, false);              
});   
// ]]>  

しかし、私の FILE POST は渡されません。私のenregistre-site-marque.phpスクリプトでは空です。POST コンテンツを渡すにはどうすればよいですか?

4

1 に答える 1

0

Prototype.js: Form.serialize()

また、JavaScript だけではシリアル化して送信できないため、ファイル入力はスキップされます。

参照: http://prototypejs.org/doc/latest/dom/Form/serialize/

この方法ではファイルを AJAX できないようです。通常のフォーム ポストを使用するか、(必要に応じて) Javascript/AJAX アップローダを使用してみてください。

AJAX を使用しない単純な HTML フォームの送信は、おそらく技術的に最も単純で信頼性の高い (したがって好ましい) ソリューションです。

于 2013-05-05T10:39:45.850 に答える