从代码隐藏文件的Html弹出窗口

时间:2011-10-29 23:12:06

标签: asp.net html vb.net popup

这可能很简单,但我找不到任何简单的解决方案。

在asp.net网页上点击按钮点击事件html是从xml和xsl生成的。这个html存储为字符串变量。例如,让我们说

dim htmlString as string = "<div>This is my popup</div>"

从上面的html字符串中我怎样才能在vb.net中动态创建html弹出窗口。我可以使用javascript在前端创建弹出窗口但是没有找到任何解决方案来通过vb.net中的代码隐藏文件创建它

编辑:

这在IE中不起作用,仅适用于firefox:

Dim popupScript As String = _
   "<script language='javascript'> myPopup() </script>" 
Dim mystring = "<html><body><div style=""color:black"">Name: Jame's</div></body></html>" 
Page.ClientScript.RegisterStartupScript(Me.GetType(), "PopupScript", String.Format(popupScript)) 

1 个答案:

答案 0 :(得分:2)

您只能使用javascript创建一个弹出窗口,因此您需要从代码隐藏中注册该脚本:

ClientScript.RegisterStartupScript(Me.GetType(), "newWindow", String.Format("<script>window.open('{0}');</script>", url))

也许我误解了你的要求。您不仅希望从代码隐藏中打开客户端弹出窗口(window.open),还可以在不使用URL的情况下即时创建该窗口?

也许这会有所帮助(未经测试):

Dim popupHtml = "<html><body><div style=""color:black"">Name: Jame's</div></body></html>"
Dim openPopupScript = "NewPopup=window.open("", 'newWindow', 'height=250, width=250');" & _
                      "NewPopup.document.open();" & _
                       String.Format("NewPopup.document.write('{0}');", popupHtml) & _
                      "NewPopup.document.close();"
ClientScript.RegisterStartupScript(Me.GetType(), _
                      "newWindow", _
                      openPopupScript)