Asp.net aspnet/vbnet响应重定向后清除标签

Asp.net aspnet/vbnet响应重定向后清除标签,asp.net,vb.net,Asp.net,Vb.net,我正在用vb.net代码构建一个asp.net网页 我的网页设计为当用户单击按钮而不填写相关文本框时显示错误;下面的代码显示了它的工作原理: If txtOrderNumber.Text = "" Then lblStatus.Text = orderNoWarning lblStatus.CssClass = "error" ElseIf txtPhaseNumber.Text = "" Then lblStatus.Text = pha

我正在用vb.net代码构建一个asp.net网页

我的网页设计为当用户单击按钮而不填写相关文本框时显示错误;下面的代码显示了它的工作原理:

If txtOrderNumber.Text = "" Then
        lblStatus.Text = orderNoWarning
        lblStatus.CssClass = "error"
    ElseIf txtPhaseNumber.Text = "" Then
        lblStatus.Text = phaseNoWarning
        lblStatus.CssClass = "error"
    ElseIf txtOrderNumber.Text.Length > 0 AndAlso txtPhaseNumber.Text.Length > 0 Then
        Try
            Dim intOrderNumber As Integer = CInt(txtOrderNumber.Text)
            Try
                Dim intPhaseNumber As Integer = CInt(txtPhaseNumber.Text)
                Dim objWIP_Tracking As New wsWIP_Tracking.WIP_TrackingSoapClient
                Dim myResults As wsWIP_Tracking.TicketType2 = objWIP_Tracking.GetTicketType2(intOrderNumber, intPhaseNumber)
                If myResults = wsWIP_Tracking.TicketType2.AME Or _
                   myResults = wsWIP_Tracking.TicketType2.Orion Then
                    lblStatus.Text = ""
                    Response.Redirect("http://ligrptsvr2/default.aspx?Report=JoinerySummarybyComponent.rpt&username=imservices&FOLDER=Analytics&OrderNo=" & intOrderNumber.ToString & "&PhaseNo=" & intPhaseNumber.ToString & "&ParameterPrompt=yes")
                ElseIf myResults = wsWIP_Tracking.TicketType2.GS Then
                    lblStatus.Text = ""
                    Response.Redirect("http://ligrptsvr2/default.aspx?Report=JoinerySummary_GreenScreen.rpt&username=wip&FOLDER=Analytics&JobNo=" & intOrderNumber.ToString & "&PhaseNo=" & intPhaseNumber.ToString & "&ParameterPrompt=yes")
                ElseIf myResults <> wsWIP_Tracking.TicketType2.AME Or _
                   myResults <> wsWIP_Tracking.TicketType2.Orion Or _
                   myResults = wsWIP_Tracking.TicketType2.GS Then
                    lblStatus.Text = warning
                    lblStatus.CssClass = "warning"
                Else
                    Response.End()
                End If
            Catch ex As Exception
            End Try
        Catch ex As Exception
        End Try
    Else
        lblStatus.Text = ""
    End If
如果txtOrderNumber.Text=”“,则
lblStatus.Text=orderNoWarning
lblStatus.CssClass=“错误”
ElseIf txtphaseEnumber.Text=”“然后
lblStatus.Text=相位警告
lblStatus.CssClass=“错误”
ElseIf txtOrderNumber.Text.Length>0,并且也可以选择txtPhaseNumber.Text.Length>0,然后
尝试
Dim INTORDERNAMBE As Integer=CInt(txtOrderNumber.Text)
尝试
Dim intPhaseNumber As Integer=CInt(txtPhaseNumber.Text)
将objWIP_跟踪作为新的wsWIP_跟踪。WIP_跟踪SoapClient
将myResults设置为wsWIP_Tracking.TicketType2=objWIP_Tracking.GetTicketType2(输入rderNumber,IntphaseEnumber)
如果myResults=wsWIP_Tracking.TicketType2.AME或_
myResults=wsWIP_Tracking.TicketType2.Orion然后
lblStatus.Text=“”
响应。重定向(“http://ligrptsvr2/default.aspx?Report=JoinerySummarybyComponent.rpt&username=imservices&FOLDER=Analytics&OrderNo=“&intOrderNumber.ToString&”&PhaseNo=“&intPhaseNumber.ToString&”&ParameterCompt=yes”)
ElseIf myResults=wsWIP_Tracking.TicketType2.GS然后
lblStatus.Text=“”
响应。重定向(“http://ligrptsvr2/default.aspx?Report=JoinerySummary_GreenScreen.rpt&username=wip&FOLDER=Analytics&JobNo=“&intOrderNumber.ToString&”&PhaseNo=“&intPhaseNumber.ToString&”&ParameterCompt=yes”)
ElseIf myResults wsWIP_Tracking.TicketType2.AME或_
myResults wsWIP_Tracking.TicketType2.Orion或_
myResults=wsWIP_Tracking.TicketType2.GS然后
lblStatus.Text=警告
lblStatus.CssClass=“警告”
其他的
答复:End()
如果结束
特例
结束尝试
特例
结束尝试
其他的
lblStatus.Text=“”
如果结束
但是,当response.redirect(重定向到新页面)出现时,我想清除标签(lblstatus)。代码“lblstatus.text=”“”不起作用。当用户被重定向到新页面,然后返回(使用浏览器返回按钮)时,标签仍然显示错误。Iv尝试禁用和启用viewstate;没什么区别。如何清除此标签

请参见:

当您按下浏览器中的“后退”按钮时,大多数浏览器只会在重定向发生之前以最新状态显示html页面的缓存副本。该功能完全依赖于浏览器。因此,您的VB代码或viewstate几乎无法执行任何操作


一个选项是在页面加载时使用java脚本,动态切换错误消息(这是我遇到此类问题时所做的操作)。

“显示错误”如果您想让我们修复它,您应该提到他在数据验证方面遇到了什么样的错误。如果用户单击“上一步”按钮,浏览器将使用其缓存显示HTML。让用户再次看到他已经看到的,这是他期望和想要的。没有“错误”。。正如杰利利·阿曼所说;这是一个验证问题。我所要做的就是在重定向到新页面后基本上清除“lblstatus”。@TimSchmelter我明白你所说的逻辑。但是,当用户被重定向到新页面时;以前显示的“错误”应该不再适用(因为它们已成功重定向),因此应该清楚如果他使用
MaskedTextBox
控件进行数据验证会怎么样?@JLILIAman我不知道MaskedTextBox的情况,但谷歌建议这是Windows窗体的事情。