模式窗口是一种方便的当前页面扩展的方式,但是aspx文件只能作为htm文件的iframe才能用这种方式调用。同时,请求字符串也是一种方便常用的页面间传值的方法,那么怎么样使两者给合起来,就是实现如何用请求字符串传值给用模式窗口打开的aspx页面呢?
我们可以用js脚本实现这种功能:
1.调用页面代码:
<script language="javascript">
function getcorrelativeitemid()
{
rdl = document.getelementsbyname("rdlsystem");
input = document.getelementbyid("txtcorrelativeitem");
sysid = "";
for(i = 0 ; i < rdl.length ; i++)
{
if(rdl[i].tagname == "input")
{
if(rdl[i].checked)
{
sysid = rdl[i].value;
}
}
}
arg = window.showmodaldialog("searchitemc.htm?sysid="+sysid,window,"resizable:1;");
if(arg!=null)
{
input.value = arg;
}
}
</script>
2.打开的htm文件的代码(searchitemc.htm):
<html>
<head>
<script language="javascript">
function resolveurl()
{
var frm = window.frames[0];
frm.location = location.tostring().replace("c.htm","c.aspx");
}
</script>
</head>
<body >
<table align="left" cellpadding="0" cellspacing="0" id="table1">
<tr>
<td valign="top"><iframe id="ifmain"></iframe></td>
</tr>
</table>
</body>
</html>
3.aspx文件(searchitemc.aspx)代码:
request.querystring["sysid"].trim();