最近遇到需要页面自动刷新的功能,于是乎就想到了Iframe……
Iframe在单个页面中可以正常的实现自动刷新
举一个关于不断往a.txt中写信息的小例子:
all.cgi页面的代码
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<title>all device</title>
</head>
<body>
<iframe id='myIfm' src='fifo.cgi' width='150' height='150'></iframe>
</body></html>
int fifo;
if ((fifo = open("a.txt", O_WRONLY | O_APPEND)) < 0) //判断打开a.txt文件是否成功
{
printf("open error: %s/n", strerror(errno)); //错误打印错误信息,返回
return(0);
}
write(fifo,"bbb/n",4); //正确的时候就不断的往a.txt文件中写“bbb”
运行一下,成功……
但是在需要用button提交的时候只能执行一次,这个问题迷糊了我3天,终于把它弄明白了,分享一下,希望可以帮到和我一样遭遇的朋友……
举一个关于用按钮提交使页面不断往a.txt中发送信息的小例子:
<script javascript="javascript">
function ok()
{
var myIfm=document.all("myIfm").src="fifo.cgi"; //这个调用的src可以是html,cgi,c……任何形式的,根据自己的需求而定
window.setTimeout( "ok2()",1000); //需要用到这句(一定要用)是因为加载另一个页面的时候需要时间,
//只能等到第一个页面加载完毕后才能调用
}
function ok2(){
//alert("ddd");
document.all( "myIfm").contentWindow.location="fifo.cgi";
}
</script>
all.cgi页面的代码
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
<title>all device</title>
</head>
<body>
<input type='submit' name='btnOpen' value='Open' οnclick="javascript:ok()"/>
<iframe id='myIfm' src='' width='150' height='150'></iframe>
</body></html>
fifo.cgi页面的代码
int fifo;
if ((fifo = open("a.txt", O_WRONLY | O_APPEND)) < 0) //判断打开a.txt文件是否成功
{
printf("open error: %s/n", strerror(errno)); //错误打印错误信息,返回
return(0);
}
write(fifo,"bbb/n",4); //正确的时候就不断的往a.txt文件中写“bbb”
运行一下,成功……
到此,大功告成喽,没白忙活一阵子,终于弄出来了,很是兴奋啊……
希望对某些和我遇到过一样的问题的朋友有所帮助……