0

私が書いた/参照した以下のコードを使用して、Pythonからメールを送信したい

<script>
$(document).ready(function() {

    $("#form1").submit(function(){
        $("#form1").validationEngine();
        if($('div input[type=text]').val() != "")
    {
        var textfield2=document.getElementById("textfield2").value;
        var textarea=document.getElementById("textarea").value;
        var dataS=$("#form1").serialize();
        $.ajax({
            type: "POST",
            crossDomain: 'true',
            url: "mail.py",
            success: function( ){
                alert("completed");
            },
            error: function(){
                alert(dataS);
            }

        });
    }
    return false;  

    }); 

});
</script>

メール部分については、以下のGoogleコードを参照しました

from google.appengine.api import mail

mail.send_mail(sender="Example.com Support <support@example.com>",
              to="Albert Johnson <Albert.Johnson@example.com>",
              subject="Your account has been approved",
              body="""
Dear Albert:

Your example.com account has been approved.  You can now visit
http://www.example.com/ and sign in using your Google Account to
access new features.

Please let us know if you have any questions.

The example.com Team
""")

ここでの質問は、ajax 呼び出しで.. mail.py スクリプトで HTML パラメータを受け取るにはどうすればよいですか? plsは私がpythonを初めて使用するのを手伝ってくれます

4

1 に答える 1

0

cgi スクリプト内で をインスタンス化するcgi.FieldStorage()と、自動的に GET または POST パラメータが入力されます。コンテンツを投稿したい場合はdata、ajax リクエスト オブジェクトにプロパティを追加するだけです。

$.ajax({
    ...
    data: {param1: 'value1', param1: 'value2', ...}
    ...
})

Pythonスクリプトでは、次のことを行うだけで十分です。

import cgi
store = cgi.FieldStorage()
par1 = store.getfirst('param1')
...

もう 1 つ -
自問してみてください: ページが読み込まれたときに本当にフォームを送信しますか? (あなたは「準備完了」イベントを使用しています)。誰かがフォームに何か入力するまで待ったほうがいいのではないでしょうか?

于 2013-04-16T19:41:21.850 に答える