如何在 VB.Net 2003 中创建打开另一个 apx.net 网页的按钮

How to create button to open another apx.net web page in VB.Net 2003

之前我在 VB.Net 2010 年设法创建了一个代码,可以通过单击按钮打开一个新的 aspx 页面。

    Protected Sub Button2_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button2.Click

    Dim a = "UpdateForm.aspx"
    Dim openWin As String = "window.open('" & a & "');"
    ClientScript.RegisterStartupScript(Me.GetType(), "pop", openWin, True)

    End Sub

现在我想在 VB.Net 2003 上使用相同的代码,但由于某种原因我遇到了错误

Name 'ClientScript' is not declared.

这是因为2003年和2010年的不同吗?他们对此有任何解决方法吗?

您应该在使用 ClientScript 之前尝试添加 Page 实例:

Page.ClientScript.RegisterStartupScript(Me.GetType(), "pop", openWin, True)

请注意 ClientScript property 是在 Page class 中定义的 属性,因此您应该包含 Page 实例来访问它。

注:

对于 ASP.NET 1.1(和 VB.NET 2003)只需使用 Page.RegisterStartupScript 如下:

Dim openWin As String = "<script>window.open('" & a & "');</script>"
Page.RegisterStartupScript("pop", openWin)

您还需要添加开始和结束脚本标签,因为已弃用的 Page.RegisterStartupScript 方法没有 addScriptTags 参数,如果设置为 True,该参数会自动添加脚本标签。

相关问题:

Name 'ClientScript' is not declared

Clientscript.RegisterStartupScript not working