发送电子邮件而不回发

时间:2013-11-17 00:41:35

标签: jquery asp.net ajax

我的页面底部有一个联系我们表单。

我想要实现的目标 - 从网站发送一封电子邮件而不回发邮件,重新加载所有页面并将客户移至页面顶部(联系我们表格位于底部)。

而不是 - 客户将按下发送按钮,然后会显示发送邮件的一些手势。

我知道如何使用常规方法发送邮件,我想要完成的是发送它 从客户端使用jquery.ajax - 这是该场景的最佳方式吗?

我做的是,客户端:

$('#btnSubmit').on('click', function () {       
    var fullName = $('#txt_fullName').val();
    var fromEmail = $('#txt_email').val();
    var comments = $('#txtArea_message').val();
    var fromPhone = $('#txt_phone').val();
    var data = "{'name': '" + name + "', 'fromEmail': '" +
           fromEmail + "', 'comments': '" + comments + "', 'fromPhone': '" + fromPhone + "'}";

    if (contactus == 0) {
        $.ajax({
            type: "POST",
            url: "Default.aspx/sentMail",
            data: data,
            contentType: "application/json; charset=utf-8",
            dataType: "json"
        })
    }else if (contactus == 1)
        return false;
})

在服务器端我有这个:

string sender_email = txt_email.Text;
    string sender_fullName = txt_fullName.Text;
    string sender_phone = txt_phone.Text;
    string sender_message = txtArea_message.Text;

    MailMessage MyMailMessage = new MailMessage();
    MyMailMessage.From = new MailAddress("XXX@gmail.com", "Site");
    MyMailMessage.To.Add("XXX@gmail.com");
    MyMailMessage.Subject = "messge from site";
    MyMailMessage.Body = "message";
    MyMailMessage.IsBodyHtml = true;
    try
    {
        SmtpClient SMTPServer = new SmtpClient();
        SMTPServer.Send(MyMailMessage);          
    }

    catch (Exception ex)
    {

    }

0 个答案:

没有答案