c# - .NET 中的 try-catch 执行 jQuery 脚本

标签 c# jquery html .net

使用asp.net成功发送邮件后,我想执行jQuery脚本
.NET 代码:

void btnSubmit_Click(Object sender, EventArgs e) {

        MailMessage objEmail = new MailMessage();
        objEmail.To = "mymail@com";
        objEmail.From = txtFrom.Text;
        objEmail.Cc = txtCc.Text;
        objEmail.Subject = "Contact";
        objEmail.Body = "note: " + txtComments.Text + " <br> " + "name:" + txtName.Text;
        objEmail.Priority = MailPriority.High;
        objEmail.BodyFormat = MailFormat.Html;

        SmtpMail.SmtpServer = "localhost";

        try{
            SmtpMail.Send(objEmail);
            Response.Write("Email send");
        }
        catch (Exception exc){
            Response.Write("");
        }
    }

jQuery:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
    $(document).ready(function() {
      var par = $('.x');
      $(par).hide();

      $("button").click(function(){
    $(".x").toggle();

      });
    });
</script>

两个脚本都可以完美工作,但我不知道如何将它们组合起来以便在成功发送邮件后关闭联系表单。

这是完整的联系表格:

<div align="center"><button class="button">Napisz do nas!</button></div>
        <div class="x">

<form runat="server">
                <div align="center">
                <table border="0" width="350">
                    <tr>
                        <td valign="top"><font face="Verdana" size="2">Imi&#281; i Nazwisko:</font></td>
                        <td height="20">   <asp:TextBox runat="server" Height="21px" Width="215px" ID="txtName"></asp:TextBox>
                        <br>
                        <asp:RequiredFieldValidator ID = "req1" ControlToValidate = "txtFrom" Runat = "server" ErrorMessage = "Prosz&#281; poda&#263; Imi&#281; i Nazwisko "></asp:RequiredFieldValidator></td>
                    </tr>
                    <tr>
                        <td valign="top"><font face="Verdana" size="2">E-mail:</font></td>
                        <td height="24"> <asp:TextBox runat="server" Height="22px" Width="213px" ID="txtFrom"></asp:TextBox>
                        <br>
                        <asp:RegularExpressionValidator ID = "reg1" ControlToValidate = "txtFrom" Runat = "server" ErrorMessage = "Invalid Email" ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>&nbsp;<asp:RequiredFieldValidator ID = "req3" ControlToValidate = "txtFrom" Runat = "server" ErrorMessage = "Nieprawid&#322;owy Email" ></asp:RequiredFieldValidator></td>
                    </tr>
                    <!--<tr>
                        <td valign="top"><font face="Verdana" size="2">To</font></td>
                        <td height="24" valign="top"> 
                        <asp:TextBox runat="server" Height="22px" Width="212px" ID="txtTo"></asp:TextBox>
                        <br>
                        <asp:RegularExpressionValidator ID = "reg2" ControlToValidate = "txtTo" Runat = "server" ErrorMessage = "Invalid Email" ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>
                        &nbsp;<asp:RequiredFieldValidator ID = "req4" ControlToValidate = "txtTo" Runat = "server" ErrorMessage = "Please enter recipients E-mail" ></asp:RequiredFieldValidator></td>
                    </tr>
                    <tr>
                        <td valign="top"><font face="Verdana" size="2">Cc</font></td>
                        <td height="24" valign="top"> 
                        <asp:TextBox runat="server" Height="22px" Width="210px" ID="txtCc"></asp:TextBox>
                        <br>
                        <asp:RegularExpressionValidator ID = "reg3" ControlToValidate = "txtCc" Runat = "server" ErrorMessage = "Invalid Email" ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>
                        </td>
                    </tr>-->
                    <tr>
                        <td valign="top"><font face="Verdana" size="2">Wiadomo&#347;&#263;:</font></td>
                        <td  height="80"> <asp:TextBox runat="server" Height="80px" TextMode="Multiline" rows="4" Width="258px" ID="txtComments"></asp:TextBox>
                        </td>
                    </tr>
                    <tr>
                        <td colspan="2" valign="top" height="10" align="center">
            <asp:Button Runat = server ID = btnSubmit OnClick = btnSubmit_Click Text = "Wy&#347;lij"></asp:Button>
                        &nbsp;<input type = "reset" runat = "server" value = "Wyczy&#347;&#263;"></td>
                    </tr>
                    </table>
                </div>
                </form>

</div>

最佳答案

大多数时候,当我需要执行此操作时,我将 javascript 代码放置在 asp.net 占位符控件中,将其设置为在页面加载时不可见,并在需要执行 javascript 时将其更改为可见。

这还允许您通过使用 3 个不同的占位符来处理 try、catch 和 finally 语句...

关于c# - .NET 中的 try-catch 执行 jQuery 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20642019/

相关文章:

c# - 创建类似 Google Labs 的扩展功能

c# - System.PlatformNotSupportedException : Speech Recognition is not available on this system. 找不到 SAPI 和语音识别引擎

javascript - 从输入中获取多个值并根据它们的类名添加它们

html - 需要在页脚内并排放置 5 个 div

html - Wget 从 html 复制文本

jquery - 创建具有等高图像列和可滚动列表组列的行

c# - 在 System.Console 上查看 XML 声明时出现问题

c# - 从类中调用 double

jquery - 使用phonegap将文件作为流上传到cloudinary

javascript - DOM 元素的放置