关于JavaScript脚本和ASP.NET程序交互问题
一个用VS .NET2003开发的ASP.NET页面,我想实现点击页面上的LinkButton弹出一个小窗口输入文字,现在是小窗口出来了,但是原来的页面变成空白了,就是小窗口浮在雪白的页面上难看的,怎么让原来的页面保持不变,弹出一个小窗口,代码:
string Url="CaseInput.aspx";
string script="<script>window.showModalDialog('"+Url+"'" +",window"')"+"</script>";
Response.Write(script);
NewBindDataGrid();//这行代码想重新绑定DataGrid的,也不起作用为什么?
问题点数:20、回复次数:6Top
1 楼ph580(.Net,我喜欢!www.bjcan.com/hengxing)回复于 2005-09-20 11:25:34 得分 0
upTop
2 楼swordragon(古道热肠)回复于 2005-09-20 11:30:18 得分 0
直接在html里面,用js写吧,放到页面的最后。
<script language="javascript">
window.showModalDialog("CaseInput.aspx","window");
</script>Top
3 楼tl_pear(飘叶寻梦)回复于 2005-09-20 11:40:19 得分 10
试一试!
string Url="CaseInput.aspx";
Url= Url.Replace("\n", "\\n");
Url= Url.Replace("""", "'");
StringBuilder sb = New StringBuilder;
sb.Append("<script language='javascript'>");
sb.Append("window.showModalDialog('"+Url+"'" +",window"');");
sb.Append("</script>");
Page.RegisterStartupScript("closeScript", sb.ToString());
NewBindDataGrid();Top
4 楼swordsman2100(风子)回复于 2005-09-20 12:38:59 得分 0
谢谢 tl_pear(飘叶寻梦) 啊,你的方法我用Page.RegisterStartupScript("closeScript", sb.ToString());代替Response.Write(script);下面的页面是不会边的空白了啊,但是那个
最后一句话NewBindDataGrid();//这行代码想重新绑定DataGrid的,也不起作用为什么?
还是没有用,我怀疑是他在弹出框返回前已经执行过了啊,我想他在弹出框返回后起作用怎么办啊Top
5 楼haolaiwu(宁愿相信世界上有鬼,也不相信女人那张嘴)回复于 2005-09-20 12:58:18 得分 0
不要用Response.Write,这样会出现空白的现象!!Top
6 楼wufeng0524(高处不胜寒)回复于 2005-09-20 13:01:30 得分 10
1.可以用Page.RegisterStartupScript("closeScript", "<script>window.showModalDialog('"+Url+"'" +",window"');");
2.象这样功能,最好在aspx页面写,比如
<div onclick="window.showModalDialog(url,window)" style="cursor:hand">单击我</div>Top




