你可以使用一个If语句.Body的电子邮件功能点击一个按钮

时间:2015-07-31 13:30:26

标签: c# asp.net webforms

我在电子邮件中向我发送详细信息时,页面上有一个按钮。这工作正常,但我有一个问题,因为我的过程中的一个问题是raido按钮选择。所选选项在我的确认页面上工作正常,但由于它是一个单选按钮,我需要if声明我的电子邮件,因为其中一个ID将为空白。

有谁知道我能做到这一点。

以下是我的电子邮件.body的代码

msg.Body = Label1.Text + " " + Session["pg1input"].ToString()
           + Environment.NewLine.ToString() +
           Label2.Text + " " + Session["pg1dd"].ToString()
           + Environment.NewLine.ToString() +
           Label3.Text + " " + Session["pg2"].ToString()
           + Environment.NewLine.ToString() +
           Label4.Text + " " + Session["pg2Yes"].ToString()
           + Environment.NewLine.ToString() +
           Label4.Text + " " + Session["pg2No"].ToString();

从上面的代码中,以下是单选按钮行,因此“pg2Yes”将为空或“pg2No”将为空白,具体取决于所选的单选按钮

Label4.Text + " " + Session["pg2Yes"].ToString()
+ Environment.NewLine.ToString() +
Label4.Text + " " + Session["pg2No"].ToString();

如果我只显示一个label4并选择了单选按钮,我会更喜欢。

我确实尝试了

Label4.Text + " " + Session["pg2Yes"].ToString() + Session["pg2No"].ToString();

但是这个邮件没有被发送了。

下面的HTML是我在确认页面上用来显示所选的相关单选按钮

<div class="form-group">
     <div class="col-xs-12">
          <asp:Label ID="Label4" class="col-md-3 control-label" runat="server" Text="Kids?"></asp:Label>
          <div class="col-md-3 form-control-static">                            
               <% if (Session["pg2Yes"] == "Yes")
               {%>
                    <%=Session["pg2Yes"] %>
               <%}

              if (Session["pg2No"] == "No")
              {%>
                    <%=Session["pg2No"] %>
              <%} %>
          </div>
      </div>
 </div>

2 个答案:

答案 0 :(得分:1)

您可以使用?: conditional operator设置要与Label4.Text连接的单选按钮值。

Label4.Text + " " + Session["pg2Yes"].ToString() == "Yes" 
    ? Session["pg2Yes"].ToString() 
    : Session["pg2No"].ToString();

答案 1 :(得分:0)

经过将近一个月的尝试排除它之后无法相信,它只是来找我,只需对两个单选按钮使用相同的session名称,并猜测它的工作原理。

更新了.cs代码

    if (PhoneRadioButton.Checked)
    {
        Session["PrefContactRadioButton"] = PhoneRadioButton.Checked ? "Phone" : "";
    }
    else if (EmailRadioButton.Checked)
    {
        Session["PrefContactRadioButton"] = EmailRadioButton.Checked ? "Email" : "";
    }

然后更新了我的确认页面以调用我的新session变量

    <div class="form-group">
        <asp:Label ID="Step01ContactMethod" class="col-xs-6 col-sm-3 control-label" runat="server" Text="Preferred method of contact:"></asp:Label>
        <div class="col-xs-6 col-sm-9 form-control-static">                            
            <%=Session["PrefContactRadioButton"] %>
        </div>
    </div>

最后更新了我的确认页面电子邮件正文

msg.Body = Step01ContactMethod.Text + " " + Session["PrefContactRadioButton"].ToString();

瞧它有效。