这可能很简单,但我找不到任何简单的解决方案。
在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))
答案 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)