繁体   English   中英

如何发送电子邮件而不回发

[英]how to Send email without postback

form_code.aspx.cs

当我单击按钮时,将CodeRandom发送到“电子邮件”页面将刷新并且模态丢失。

当我点击按钮时,我需要没有回发页面

char[] letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789".ToCharArray();
        Random r = new Random();
        string randomString = "";
        string Code;
        for (int i = 0; i <= 5; i++)
        {
            randomString += letters[r.Next(0, 35)].ToString().Trim();
        }

        Code = "Code : " + randomString;

        MailMessage msg = new MailMessage();

        msg.From = new MailAddress("-----@gmail.com");//from
        msg.To.Add(new MailAddress(txt_email.Text.ToString().Trim()));//
        msg.Subject = "Verify Email by SnaBlack";//ชื่อsubject
        msg.Body = Code.ToString().Trim();
        msg.IsBodyHtml = true;
        SmtpClient smtp = new SmtpClient();
        smtp.Host = "smtp.gmail.com";
        smtp.Port = 587;
        smtp.EnableSsl = true;
        smtp.Credentials = new NetworkCredential("------@gmail.com", "------------");//password
        smtp.Timeout = 20000;
        smtp.EnableSsl = true;

您可以在asp.net代码中禁用PostBack

<asp:button runat="server" ... OnClientClick="return false" />

或js:

<input type="button" id"sendMail" onclick="callSendMail();return false;"/>

然后您可以通过ajax从js调用您的方法:

$.ajax({
    type: "POST",
    url: mailSendUrl,
    data: param = "",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: successFunc,
    error: errorFunc
});

您应该通过AJAX技术向服务器发出请求。 使用以下技术之一在client side (您的实际生成的HTML页面)上使用JS代码,并在server side (.NET Web服务)上使用请求处理程序:asp.net Web api,wcf,Web方法(asp.net Web表单) ,asmx(已过时)。 请阅读更多有关它的信息,因为简单的复制粘贴对您的练习无济于事。 对客户端-服务器交互的清楚了解将帮助您轻松构建另一个示例,而无需SO

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM