CheckBoxList选择(允许一个以上)。我试图找到一种方法来遍历所有选择。如果选中某个项目,它将发送并通过电子邮件发送给特定的收件人。可以选择多个项目。我该如何设置?以下是我所做的并且仅对选定的项目有效,但是如果我选择了1个以上的项目,它将无法正常工作。我只做了大约4个月的ASP / C#。感谢帮助。
ASP.net
<asp:CheckBoxList ID="CheckBoxList1" runat="server" RepeatColumns="3">
<asp:ListItem >Conceptual Object Model</asp:ListItem>
<asp:ListIteM >Application Communication Diagram</asp:ListIteM>
<asp:ListItem >Application / Functionality Matrix</asp:ListItem>
<asp:ListItem >Application and User Location Model</asp:ListItem>
<asp:ListItem >Data Model</asp:ListItem>
<asp:ListItem >Role/Application Matrix</asp:ListItem>
<asp:ListItem >Process Model / Activity Diagrams</asp:ListItem>
<asp:ListItem >One Boeing Capability Map (OBCM)</asp:ListItem>
<asp:ListItem >Other (list architecture models below)</asp:ListItem>
</asp:CheckBoxList>
C#
if (CheckBoxList1.SelectedValue == "Data Model")
{
// Session["sess_GRPInbox"] = "email1.com";
Session["sess_2ndEmailperson"] = "email2.com";
}
else
{
Session["sess_2ndEmailperson"] = "";
}
if (CheckBoxList2.SelectedValue == "No")
{
Session["sess_3rdEmailperson"] = "email3.com";
}
else
{
Session["sess_3rdEmailperson"] = "";
}
Session["sess_GrpInbox"] = "email1.com";
Response.Redirect("EmailPage.aspx");
Emailer aspx.cs页面
MailAddress from = new MailAddress(Session["sess_GRPInbox"].ToString());
// MailAddress from = new MailAddress("email1.com");
// MailAddress to = new MailAddress(txtOriginatorEmail.Text.Trim());
MailAddress to = new MailAddress("email1.com");
MailMessage message = new MailMessage(from, to);
// 2nd Email Recipient:
string str_sess_2ndEmailperson = Session["sess_2ndEmailperson"].ToString();
if (str_sess_2ndEmailperson == "")
{
}
else
{
message.To.Add(Session["sess_2ndEmailperson"].ToString());
}
// string str_sess_3rdEmailperson = Session["sess_3rdEmailperson"].ToString();
// if (str_sess_3rdEmailperson == "")
// {
// }
// else
// {
// message.To.Add(Session["sess_3rdEmailperson"].ToString());
// }
message.Subject = "Issue Management Submittal Confirmation";
message.IsBodyHtml = true;
String strBody = @"A new proposed issue has been submitted.<br />Click here to view the issue:<br />";
message.Body = strBody;
答案 0 :(得分:0)
您需要遍历复选框列表,例如:
foreach (ListItem item in CheckBoxList1.Items)
{
if(item.Checked)
{
sendEmail(item.Value); //assuming your val is the email address
}
}
然后在您的电子邮件例程中,将电子邮件地址作为参数传递
private void sendEmail(string emailAddress)
{
//call your email routine here
}