如何从bootstrap / html中的联系我们表单获取邮件

时间:2016-02-26 07:21:31

标签: asp.net twitter-bootstrap contact-form mailto

我在Asp.net上的Web应用程序Web表单中实现了此代码    http://azuresolutionz.com/ContactUs.html请查看链接以了解详细问题。

当我点击发送按钮时,我没有收到收件箱中的表单详细信息。 并且js也不起作用。

1 个答案:

答案 0 :(得分:0)

啊,我看,你在这里以非常奇怪的方式实施了邮件。

首先非常重要 - 我在您的控制台中看到错误消息“$ is not defined”。但是我在Resource文件夹中看到了jquery文件,这只表示你以错误的顺序调用了jquery-2.1.4.min.js

首先需要在所有其他js文件(如bootstrap.min.js和ContactUs.js )之前调用jquery-2.1.4.min.js文件。进行此更改后,您可以尝试一下。这应该删除你的大多数js错误。

现在,您可以查看我提供的其他信息,以便更好地了解您的邮件系统的运作方式。

  • 您没有使用任何服务器端技术,而是直接从字段中获取值并单击发送按钮,您正在检索所有表单输入数据并使用mail:to

  • mail:to在用户的默认邮件客户端上打开邮件(包含数据)以发送邮件。

  • 因此,只需预期(点击“发送”按钮后),即可在Outlook(Windows)或邮件(MAC)等默认电子邮件客户端上填充数据。

  • 在您的电子邮件客户端上,您需要发送邮件,就像发送任何普通邮件一样发送和接收邮件。

或者,如果您不想要mailto,那么您必须使用任何使用PHP或Java或C#等的服务器端邮件程序实现。

根据@ Shahzeb的要求更新:

创建 ContactUs.ascx 文件后,

首先,您需要将输入文本字段设为asp:TextBox并为其添加ID属性,因为这是我们如何获取页面后面代码上相应字段的值。这看起来像

<asp:TextBox ID="txtFirstName" runat="server" />

为您的所有领域执行此操作。

然后将此添加到 ContactUs.ascx.cs 文件(这是ContactUs.ascx的代码隐藏页面)。

注意:已添加using System.Net.Mail;

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net.Mail;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        try
        {
            MailMessage message = new MailMessage(txtFirstName.Text, txtLastName.Text, txtEmail.Text, txtPhone.Text);
            SmtpClient emailClient = new SmtpClient(txtSMTPServer.Text);
            emailClient.Send(message);
            litStatus.Text = "Message Sent";
        }
        catch (Exception ex)
        {
            litStatus.Text=ex.ToString();
        }
    }
}