0

一番下のアップデートを読んでください。

連絡先フォームからの情報を電子メールで送信するページ メソッドを作成しました。フォームはカラーボックス ウィンドウで起動され、フォームは独自の .aspx ページです。

ページメソッドを呼び出すことはできますが、エラーが発生し、実際の例外を文字列として返しているにもかかわらず、実際の例外を出力できないようです。

Page メソッドの概要は次のとおりです。

 [WebMethod]
    public static string SendEmail(string name, string email, string message)
    {
        try
        {
            // send the email

            return "success"; 
        }
        catch(Exception ex)
        { 
            return ex.ToString(); 
        }
     }




CLIENT CODE:

<script type="text/javascript">

    // add event handler for submit button
    $addHandler($get('SendEmailPageMethod'), 'click', EmailPageMethod);

    function EmailPageMethod() {
        var name = $get('name').value;
        var email = $get('email').value;
        var message = $get('message').value;

        // call pagemethod sending form data
        PageMethods.SendEmail(name, email, message, SendEmailCallback, ErrorCallback);
    }

    function SendEmailCallback(resultString) {
        alert(resultString);
    }

    function ErrorCallback(error) {
        alert(error.get_message());
    }

</script>

errorcallback 関数が毎回呼び出されているようですが、error.get_message は pagemethod が失敗したことを示しています。

私は試した

function SendEmailCallback(resultString) {
        alert(resultString);
    }

しかし、それはちょうど[オブジェクトオブジェクト]と言いました。

私も試しました

function SendEmailCallback(resultString) {
        alert(String(resultString));
    }

しかし、まだ [オブジェクト オブジェクト] と表示されています。

例外全体を印刷して、何が起こっているかを確認する方法はありますか? 私はページメソッドに非常に慣れていないので、ここで壁にぶつかっています。

ありがとう。

更新 - 送信を押したときにこのエラーが発生しました。

このエラーが発生しました:

POST 
http://localhost:1427/PortfolioWebsite/ContactForm.aspx/SendEmail 404 (Not Found) (program):5
Sys.Net.XMLHttpExecutor.executeRequest (program):5
Sys.Net._WebRequestManager.executeRequest (program):5
Sys.Net.WebRequest.invoke (program):5
Sys.Net.WebServiceProxy.invoke (program):5
Sys.Net.WebServiceProxy._invoke (program):5
PageMethods.SendEmail (program):16
PageMethods.SendEmail (program):34
EmailPageMethod (program):11
b

実際のページメソッドが見つかりませんか?

4

1 に答える 1

0

お問い合わせフォームをルート ディレクトリに移動して修正しましたが、パスを指定する場所がわかりません。自動で、ルートディレクトリを調べたかっただけのように感じます。

于 2013-02-12T01:52:39.327 に答える