Я создал страницу asp. net, включив функцию почты на этой странице. Страница имеет контактную форму. Отправляет почту после заполнения формы. Почта идет, но откройте страницу с ответом. Здесь откроется страница с ответом, и появится только мой ответ. Я использовал AJAX, но я не смог предотвратить открытие страницы. Как я могу это сделать?
HTML:
<script type=text/javascript>
$("input[name=buttonsubmit]").click(function () {
$.ajax({
type: "POST",
url: "Default.aspx",
data: form,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
if (response.toString == 1) {
alert("form success");
}
}
});
});
</script>
<form action="Default.aspx" method="post">
<div class="form-group row">
<div class="col-12">
<input type="text" name="namesurname" class="form-control form-control-lg" style="border:none; border-bottom:solid; border-bottom-color:#00195A" placeholder="Ad Soyad">
</div>
</div>
<div class="form-group row">
<div class="col-12">
<input type="email" name="emailaddress" class="form-control form-control-lg" style="border:none; border-bottom:solid; border-bottom-color:#00195A" placeholder="E-mail">
</div>
</div>
<div class="form-group row">
<div class="col-12">
<input type="tel" name="phonenumber" class="form-control form-control-lg" style="border:none; border-bottom:solid; border-bottom-color:#00195A" placeholder="Telefon">
</div>
</div>
<div class="form-group row">
<div class="col-12">
<textarea type="text" name="messagearea" class="form-control form-control-lg" style="border:none; border-bottom:solid; border-bottom-color:#00195A" placeholder="Mesajınız"></textarea>
</div>
</div>
<div class="form-group row">
<div class="col-12 button">
<input type="submit" name="buttonsubmit" class="form-control form-control-lg" style="border:solid; color:#00195A" value="Gönder">
</div>
</div>
</form>
Default.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
Default.aspx.cs:
protected void Page_Load(object sender, EventArgs e)
{
try
{
string adSoyad = Request.Form["namesurname"];
string epostaAdresi = Request.Form["emailaddress"];
string tel = Request.Form["phonenumber"];
string mesaji = Request.Form["messagearea"];
string ipAdresi = ""; //gönderenin IP adresini alıyoruz (localde 127.0.0.1 yada ::1 şeklinde gözükür)
if (HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
ipAdresi = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
else if (HttpContext.Current.Request.UserHostAddress.Length != 0)
ipAdresi = HttpContext.Current.Request.UserHostAddress;
string mesajIcerik = "";//mesaj içeriği HTML ile biçimlendirilebilir
mesajIcerik += "<b>İletişim Formundan Gelen Mesaj</b> / " + DateTime.Now.ToString() + " / " + ipAdresi + "<br/>";
mesajIcerik += "<b>Adı Soyadı: </b>" + adSoyad + "<br/>";
mesajIcerik += "<b>E-posta: </b>" + epostaAdresi + "<br/>";
mesajIcerik += "<b>Telefon: </b>" + tel + "<br/>";
mesajIcerik += "<b>İleti: </b>" + mesaji;
MailMessage yeniMesaj = new MailMessage();
yeniMesaj.IsBodyHtml = true;
yeniMesaj.To.Add("***@gmail.com");//buraya alıcı mail adresiniz gelecek
yeniMesaj.From = new MailAddress("***@gmail.com", "***", System.Text.Encoding.UTF8); // buraya gönderen mail adresiniz ve görünecek ismi gelecek
yeniMesaj.Subject = "Yeni Mesaj: " + adSoyad; //buraya mail konusunda görünecek kısım gelecek
yeniMesaj.Body = mesajIcerik;
SmtpClient gonder = new SmtpClient();
gonder.Credentials = new NetworkCredential("***@gmail.com", "***");//buraya gönderen mail adresiniz ve şifreniz gelecek
gonder.Port = 587; //gmail için varsayılan SMTP port
gonder.Host = "smtp.gmail.com"; //gmail için smtp adresi
gonder.EnableSsl = true;
gonder.Send(yeniMesaj);
Response.Write("1");
//Response.End();
}
catch (Exception ex)
{
Response.Write(ex.Message);
//Response.End();
}
}