0
public void DisplayThickBox(Page page, int width, int height)
    {
        string script = "<script type='text/javascript'>";
        script += "$(document).ready(function(){";
        script += "tb.show('null', 'auto-insurance-redirect.aspx?keepThis=true&TB_iframe=true&height=" + height.ToString() + "&amp;width=" + width.ToString() + "',null);";
        script += "});";
        script +="</script>";

        ScriptManager.RegisterStartupScript(page, page.GetType(), "", script, true);

    }

^^^显示thickbox的方法...^^^

DisplayThickBox(this, 518, 321);

^^^在触发它的按钮的单击事件中调用方法...^^^

页面刚刚刷新,厚框永远不会显示。我正在尝试手动调用javascript,因为在我在后面的代码中显示thickbox之前我做了一些其他的事情......

4

3 回答 3

0

搞定了,不知道怎么解决的……我尝试了很多东西,一切都变得肮脏和聚集,所以我把所有东西都拿出来,从空白开始,它马上就奏效了。

感谢大家的帮助!

于 2010-03-31T16:51:18.713 回答
0

听起来您是在按钮单击事件上调用它,该事件将回发到服务器。您需要在客户端上注册 javascript 并从 javascript 调用它,而不是通过服务器端代码。您现在拥有的是一个启动脚本,它应该在页面加载时运行,这并不是您真正想要的。

于 2010-03-31T15:24:54.570 回答
0

查看您的 javascript 参数:

"tb.show('null', 'auto-insurance-redirect.aspx?keepThis=true&TB_iframe=true&height=" + height.ToString() + "&amp;width=" + width.ToString() + "',null);"

我注意到一些参数由 分隔,&其他参数由 分隔&amp;。也许这就是问题所在。

于 2010-03-31T15:31:52.843 回答