尝试发送邮件时,javascript中的asp.net LinkBut​​ton没有被调用

时间:2012-04-04 13:49:52

标签: javascript asp.net c#-4.0 updatepanel lightbox

         <div class="popup" id="invite-box">
       <asp:UpdatePanel ID="upd1" runat="server">
       <ContentTemplate>
            <a href="#" class="close">close</a>
            <div class="popup-holder">
                <div class="popup-frame">
                    <div class="container"> 
                        <div action="#" class="invite-form" >


                                        <div class="email">
                                            <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox></div>

                                        <div class="textarea">
                                            <div class="textarea-holder">
                                                <asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine" Rows="10" Columns="30"></asp:TextBox>
                                            </div>
                                        </div>

                                <div class="btn-holder">
                                    <a href="#" class="btn-view">View sample e-mail</a>
                                    <asp:LinkButton ID="LinkButton6" runat="server" CssClass="btn-send" 
                                        onclick="LinkButton6_Click"></asp:LinkButton>
                                </div>


                    </div>
                </div>
</div>
</div>
        </ContentTemplate>
        </asp:UpdatePanel>
        </div>

这是我的弹出式代码,我试图在linkbutton上发送邮件,但是后面的代码中没有调用LinkBut​​ton_Click

我的代码如下:

    protected void LinkButton6_Click(object sender, EventArgs e) // Not getting called
{
    if (r1.Checked == true)
    {

        try
        {
            MailMessage mail = new MailMessage();
            mail.Subject = "Some one has invited you: Join abc! Meet ## of %%";
            mail.Body = mee.data[0].name+"</br>"+TextBox1.Text;
            mail.To.Add(TextBox2.Text);

            ////send the message

            SmtpClient mySmtpClient = new SmtpClient();
            System.Net.NetworkCredential myCredential = new System.Net.NetworkCredential("****", "*****");
            //mySmtpClient.Port="25";
            mySmtpClient.Host = "abc";
            mySmtpClient.UseDefaultCredentials = false;
            mySmtpClient.Credentials = myCredential;
            mySmtpClient.Send(mail);
        }
        catch (Exception ex)
        {
            Response.Write(ex.ToString());
        }
    }

修改

我认为我的代码正在考虑将linkbutton视为javascript Button   enter image description here

谢谢

2 个答案:

答案 0 :(得分:0)

我认为您在更新面板中缺少触发器。在关闭更新面板的标签之前添加以下触发器

<Triggers>                      
    <asp:AsyncPostBackTrigger ControlID="LinkButton6" EventName="Click" />
</Triggers>
</asp:UpdatePanel> 

希望这可能有所帮助...

答案 1 :(得分:0)

从查看你的问题......

我想说你显示的链接按钮与源中的链接按钮不同。

我尝试使用邀请作为其文本

的链接按钮复制您的问题
<asp:LinkButton ID="LinkButton6" runat="server" onclick="LinkButton6_Click">Invite</asp:LinkButton>

您可以在源代码中看到它包含标签之间的邀请。

在您的来源中没有提及邀请

<asp:LinkButton ID="LinkButton6" runat="server" CssClass="btn-send"                                             onclick="LinkButton6_Click"></asp:LinkButton>  

尝试添加其他链接按钮,双击它,将代码添加到其中,然后重试。