使用javascript的Response.Write()无法正常工作

时间:2011-03-24 19:47:44

标签: javascript asp.net vb.net

我遇到了这段代码的问题:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    clave = Request.QueryString("cve")

    If clave = Nothing Then
        Response.Write("<script language='javascript'>alert('Querystring is empty');window.close();</script>")
        Return
    End If

    Dim valid As Boolean
    valid = Regex.Match(clave, "\b\d{3}\-\d{3}\-\d{3}\b").Success

    If valid = False Then
        Response.Write("<script language='javascript'>alert('Wrong format');window.close();</script>")
        Return
    End If

'More Code
End Sub

问题是,第一个if语句工作正常,'javascript'显示警告并关闭窗口,但在第二个if语句中,javascript显示消息但不关闭窗口。

你们知道如何解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

代码似乎很好。

尝试使用Client.RegisterScriptBlock。

答案 1 :(得分:1)

window.close();是正确的,但出于安全原因,大多数浏览器都不允许您关闭未打开的窗口。