1. window.open 与 window.showModalDialog
1).window.open(pageURL,name,parameters)
其中: pageURL 为子窗口路径 name 为子窗口句柄 parameters 为窗口参数 ( 各参数用逗号分隔 )
2). vReturnValue = window.showModalDialog(sURL [, vArguments] [,sFeatures])
要想对话框传递参数,是通过 vArguments 来进行传递的。 类型不限制,对于字符串类 型,最大为 4096 个字符。也可以传递对象
可以通过 window.returnValue 向打开对话框的窗口返回信息,当然也可以是对象
例如:
window.open('../ModelFile/LogAdd.aspx?delaction=SoDelete&soid='+deleteid+'&sodetailid=0&userid='+userid,'LogDialog','width=450,height=350,resizable=no,scrollbars=no,status=no,toolbar=no,menubar=no,location=no');
window.showModalDialog('../ModelFile/LogAdd.aspx?delaction=SoDelete&soid='+deleteid+'&sodetailid=0&userid='+userid,window,'scroll=yes;resizable=yes;dialogHeight:450px;dialogWidth:500px;center:yes;status:no');
2.settimeout 与 setinterval
window.settimeout()
在执行时,它从载入后延迟指定的时间去执行一个表达式或者是函数 ; 仅执行一次 ; 和 window.cleartimeout 一起使用 .
window.setinterval()
在执行时 , 它从载入页面后每隔指定的时间执行一个表达式或者是函数 ;( 功能类似于递归函数 ) ;和 window.clearinterval 一起使用 .
1 ,基本用法:
执行一段代码: var i=0; settimeout("i+=1;alert(i)",1000);
执行一个函数: var i=0; settimeout(function(){i+=1;alert(i);},1000);
下面再来一个执行函数的:
var i=0; function test(){ i+=1; alert(i); } settimeout("test()",1000);
也可以这样: settimeout(test,1000);
2, 用 settimeout 实现 setinterval 的功能
思路很简单,就是在一个函数中调用不停执行自己,有点像递归
var i=0;
function xilou(){
i+=1;
if(i>10){alert(i);return;}
settimeout("xilou()",1000);
// 用这个也可以
//settimeout(xilou,1000);
}
window.setTimeout(func,delay);
func ,代表所要执行的函数或代码字符串。
delay ,延时参数,单位为毫秒,一秒= 1000 毫秒。
func 中传递的函数或语句有变量输入时,变量的取值以延时后的执行时段时的取值为准,不以代码执行时段的值为准。例如:
代码 :
for(var i=1;i<=50;i++)
{
window.setTimeout("document.write(i)",1000);
}
这样写的意义是在程序执行完 1 秒后打印 50 个 i ,此时程序已执行完, i 的取值为 "51";
如果要是程序每隔 1 秒打印一个数,则程序要改写为
代码 :
for(var i=1;i<=50;i++)
{
window.setTimeout("document.write("+i+")",i*1000);
}
3. 页面刷新
用 iframe 、弹出子页面刷新父页面
iframe
parent.location.reload();
弹出子页面
window.opener.location.reload();
子窗口刷新父窗口
self.window.opener.locaction.reload();
刷新一 open ()方法打开的窗口
window.opener.location.href = window.opener.location.href
刷新以 winodw.showModelDialog() 方法打开的窗口
window.parent.dialogArguments.document.execCommand('Refresh');
刷新父页和本页面 :
Response.Write("<script>alert(' 提交成功! ');window.location.href=window.location.href;
window.opener.location=window.opener.location;</script>");
4.js 获取父页面对象的值
window.dialogArguments.document.form1.idTB.value
window.dialogArguments.document. getElementById("idTB").value
window.opener.document.getElementById("idTB").value