在某个时刻,我有一个动态生成的字符串,在我的代码隐藏中使用了html 我想打开一个以html为源的弹出窗口。
我尝试过以下方法:
我在.aspx
网站(Javascript)上创建了此方法:
function OpenWindowWithHtml(html, title) {
var myWindow = window.open('', title);
myWindow.document.write(html);
myWindow.focus();
}
在代码隐藏中我有这个:
Response.Write("OpenPopupWithHtml(\"" + html + "\", \"" + title + "\");");
但是当我尝试执行此操作时,我收到错误 有谁看到,我在这里做错了什么? 或者有人知道更好的方法吗?
答案 0 :(得分:1)
修改强>
按钮上的点击它就像这样
protected void btnAbct_Click(object sender, EventArgs e) {
ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", "OpenPopupWithHtml('" + html + "', '" + title + "');");
}
执行代码即。你用javascript编写的函数
ClientScript.RegisterStartupScript(this.GetType(),
"newWindow", "OpenPopupWithHtml('" + html + "', '" + title + "');");
您可以像这样注册客户端脚本
if (!ClientScript.IsClientScriptBlockRegistered("exampleScript"))
ClientScript.RegisterStartupScript(this.GetType(), "exampleScript","
<script language = "'javascript'">
alert('you just registered the start up script')
</script>
");
来自asp.net的代码隐藏文件
要打开弹出窗口,只需在上面的代码中替换此行
ClientScript.RegisterStartupScript(this.GetType(),
"newWindow", String.Format("<script>window.open('{0}');</script>",
"mypage.html"));