根据选中的项目,从表单创建电子邮件列表

时间:2013-12-30 16:23:28

标签: c# forms email

我在网页上有一个简单的表单,用户可以选择通过复选框将页面表单发送给最多4个不同的电子邮件收件人。以下是4个选项的代码,请注意其中两个是下拉列表。

<asp:CheckBox ID="checkdnr" Text="DNR" AutoPostBack="True" runat="server" Checked="false" OnCheckedChanged="check_CheckedChanged" />
<asp:CheckBox ID="checksenate" Text="Senate Rep" AutoPostBack="True" runat="server" Checked="false" OnCheckedChanged="check_CheckedChanged" />

<asp:DropDownList runat="server" ID="listSenate">
  <asp:ListItem Selected="True" Text="Choose your representative" />
  <asp:ListItem Text="senator 1" Value="senator1@email.com" />
  <asp:ListItem Text="senator 2" Value="senator2@email.com" />
  <asp:ListItem Text="senator 3" Value="senator3@email.com" />
</asp:DropDownList>

<asp:CheckBox ID="checkcongress" Text="Congress Rep" AutoPostBack="True" runat="server" Checked="false" OnCheckedChanged="check_CheckedChanged" />

<asp:DropDownList runat="server" ID="listCongress">
  <asp:ListItem Selected="True" Text="Choose your representative" />
  <asp:ListItem Text="congress 1" Value="congress1@email.com" />
  <asp:ListItem Text="congress 2" Value="congress2@email.com" />
  <asp:ListItem Text="congress 3" Value="congress3@email.com" />
</asp:DropDownList>

<asp:CheckBox ID="checkgov" Text="Governor" AutoPostBack="True" runat="server" Checked="false" OnCheckedChanged="check_CheckedChanged" />

<asp:TextBox ID="txtBody" runat="server" Height="171px" TextMode="MultiLine" Width="270px" />

<asp:Button ID="Btn_SendMail" runat="server" OnClick="Btn_SendMail_Click" Text="Send Email" />

<asp:Label ID="status" runat="server" Text="" />
<asp:Label ID="emails" runat="server" Text="" />

所以基本上我想在代码隐藏中创建一个函数,在这里打印出前端选定电子邮件的“字符串”,以便进行测试。也许还将它们放入一个隐藏的表单变量中,一旦用户准备好发送消息,我就可以将其传递给Submit函数。

我想我的问题是什么是最好的方法来解决这个问题,js在前端并做一个foreach循环并检查那里的值并将该值放入隐藏的输入中? ...或者在后端,只需在代码隐藏中处理它。

1 个答案:

答案 0 :(得分:1)

在后端执行所有操作以获取下拉值,您可以使用“listSenate.SelectedValue.ToString()”和“listCongress.SelectedValue.ToString()”

到复选框,你可以使用if(checkcongress.Checked){code here}

之后,您可以创建一串电子邮件并使用Net.Mail和Net.Mime

发送

如果您不知道如何使用c#发送电子邮件,我可以向您显示我的代码。