[ad_1]
大家好,
我是 vb.net 的新手,正在做一个项目,该项目具有三个模块,例如主页、注册页面和最后使用 ASP.NET 的联系我们页面。 我的问题是联系我们页面,也就是说,用户可以填写我在联系我们页面中创建的联系方式。一旦用户能够填写表格并单击提交按钮,然后它就会显示一个弹出窗口,例如“谢谢”如需联系我们,我们会尽快回复您”(使用脚本)找到下面的代码),我必须点击“确定”按钮才能使该消息消失。 我的问题是,当我单击“确定”按钮时,页面将需要转到主页,但它不会出现在我的代码中。 请找出我在联系我们页面中使用的以下代码。 请给我一滴解决方案,这对我非常有帮助……
我的代码是:
VB
Protected Sub imgLogin_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles imgLogin.Click Dim resulttosend As String Dim subject As String = " User Request:" Dim msgto As String = ConfigurationManager.AppSettings("contactus_email") Dim msgfrom As String = ConfigurationManager.AppSettings("SendMail_from") Dim msgcc As String = "" Dim msgbcc As String = "" Dim msgdesc As String msgdesc = "Hi Administrator,<br><br>" & _ "Name: " & Txtname.Text & "<br>" & _ "City: " & txtCompany.Text & "<br>" & _ "Tel: " & Txttelephone.Text & "<br>" & _ "Email: " & Txtemail.Text & "<br>" & _ "Additional Information: " & Txtinfo.Text & "<br>" Dim clsobj As clsCommon = New clsCommon resulttosend = clsobj.fnsendMail(msgfrom, msgto, msgcc, msgbcc, subject, msgdesc) If resulttosend = "" Then Response.Write("<script language='javascript'>alert('Thank you for contacting us. We will get back to you shortly');</script>") Response.Redirect("Index.aspx") txtCompany.Text = "" Txtemail.Text = "" Txttelephone.Text = "" Txtinfo.Text = "" Else lblStatus.Text = resulttosend Trace.Warn("ibSend_Click", "exception occured sending mail-->" & resulttosend) End If End Sub
解决方案1
这里执行的代码是在服务器端。 您的 Response.Write 正在将 HTML JavaScript 代码发送到浏览器,并且在浏览器中显示警报框之前,将执行 imgLogin_Click 方法内的完整其余代码。 这立即引起我注意这里的一个问题:
由于 Response.Redirect 将信息添加到 HTTP 标头,因此在已经写入流的情况下尝试重定向响应时通常会导致错误。 您可能想要的是在alert(“…”);后面放置一些代码调用将使浏览器导航到您的 Index.asp 就像 窗口.位置.分配(url)[^]。
Response.Write("<script language='javascript'>alert('Thank you for contacting us. We will get back to you shortly'); window.location.assign('http://you.domain.xx/path/Index.asp');</script>")
问候,
[ad_2]
コメント