首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > CGI >

CGI读取html资料输出到IE端后,HTML中的JS不可执行

2012-12-18 
CGI读取html文件输出到IE端后,HTML中的JS不可执行使用cgi读取HTML文件后经过URL请求输出到IE端,结果在输出

CGI读取html文件输出到IE端后,HTML中的JS不可执行
使用cgi读取HTML文件后经过URL请求输出到IE端,结果在输出内容中,所有的JS都不可用,并且读取的图片不能显示GIF格式(PNG格式的可以正常显示)?

[最优解释]
QT那边貌似没问题,换个非IE浏览器试试?
[其他解释]
贴下代码?
[其他解释]

引用:
贴下代码?



<title>无标题文档</title>
<link href="images/style.css" rel="stylesheet" type="text/css" />
<script language="javascript">
    function AlertWindow() {
        confirm("确定恢复吗");
    }
    
</script>
</head>

<body>
<div style="border: 6px ridge #00AAEC; background-color: #E7EEF6; height: 473px;">
      <ul><li style="margin: 150px"></li>
            <li style="text-align: center; ">恢复出厂设置后设备上全部数据将被删除,返回到最原始状态, </li> 
            <li style=" text-align: center; text-indent: -30px;">一般在发生不可挽回的错误导致系统异常时使用,通常不建议使用。 </li>
         </ul> 
    <div ><input type="button" value="恢复出厂设置" 
            style="margin: 30pt;border: 5px outset #ECEADE; width: 200px; height: 30px; margin-left: 300px; background-color: #808080;" onclick="AlertWindow()"/></div>
  </div>

</body>
</html>




void checksuccess(char name[16], char pw[16]){
    QFile homePage("/home/factory.htm");
    printf("<TITLE>factory</TITLE>\n");
    QTextStream in(&homePage);
    if (!homePage.open(QIODevice::ReadOnly)){
        return ;
    }
    in.setCodec(QTextCodec::codecForName("UTF-8"));
    QTextStream out(stdout);
    out.setCodec(QTextCodec::codecForName("UTF-8"));
    while(!in.atEnd()){
        QString line = in.readLine();
        out<<(line);
        out.flush();
    }
}




大神请指教!!!
[其他解释]
上面的html是返回的文本吗?body那些只有标签没有成对?
[其他解释]
引用:
上面的html是返回的文本吗?body那些只有标签没有成对?


贴的不是很全,但是方式就是这样的

在下面代码中读取上面的文本然后输出在页面上,现在上面的代码显示出来时,js无效,动作没有相应,就是相当于onclick和function没有进去,不知道是cgi读取的问题还是什么样的问题,但是当只静态的执行上面的html文本时,js是可以执行的。
[其他解释]
这个要在输出文本之前输出,不知道你写了没有?
std::cout<<"Content-Type:text/html;charset=utf8\n\n";
------其他解决方案--------------------


引用:
这个要在输出文本之前输出,不知道你写了没有?
std::cout<<"Content-Type:text/html;charset=utf8\n\n";


有写,写在main方法里面了,main方法调用checksuccess方法。所以,那个没问题!
[其他解释]
引用:
QT那边貌似没问题,换个非IE浏览器试试?


呃……突然间就好使了,什么都没调,就那么的好使了。。。让别人帮我登录了一下试了一下就好使了,果然是灰常看脸呐,人品好差不少啊,哈哈哈!
[其他解释]
在前面定义一个字串变量
QString theforeverKnight ="";
    while(!in.atEnd()){
        theforeverKnight += in.readLine();
    }
        out<<(theforeverKnight);
        out.flush();

[其他解释]
当然,下面这样就可以,只是为了留个名,现在机器人转载太严重,主要是转载时根本不保留作者名称,现在连CSDN在引用显示中都直接取消所引用人的名称了

    while(!in.atEnd()){
        QString line = in.readLine();
        out<<(line);
    }
    out.flush();

[其他解释]
引用:
当然,下面这样就可以,只是为了留个名,现在机器人转载太严重,主要是转载时根本不保留作者名称,现在连CSDN在引用显示中都直接取消所引用人的名称了

    while(!in.atEnd()){
        QString line = in.readLine();
        out<<(line);
    }
    out.flush();


哈哈,机器人,我喜欢机器人,但是像我这种水平的不怕被引用,也没啥可被引用的哈哈,大神们是应该多注意一下,毕竟都是知识产权!!
[其他解释]
引用:
引用:

当然,下面这样就可以,只是为了留个名,现在机器人转载太严重,主要是转载时根本不保留作者名称,现在连CSDN在引用了.
[其他解释]
知识产权什么的.... 你作为提问方没有感觉,反过来,作为回复方,不要说很多问题是自己思考和出于积累的经验,就算是去百度来粘贴的,那也是你的劳动,起码采集的时候应该保留发言人名称吧,这是起码的尊重.但是有些采集之后生成的结果,非但不保留,甚至是伪造一些人名代替作为发言者,你说难道不可恶吗???
[其他解释]
作为提问者,这种无视别人热心帮助的忘恩负义还加上冷嘲热讽,也算一个CSDN里负面典型的一个实例了.
[其他解释]
引用:
作为提问者,这种无视别人热心帮助的忘恩负义还加上冷嘲热讽,也算一个CSDN里负面典型的一个实例了.



大神,你误会了,可能是我说的话你不是很理解,或者是我真的没表达明白我的意思,我没有冷嘲热讽的意思,我只是在自嘲,作为刚入行不到3个月的应届毕业生,我觉得我对于知识的产权问题没有表达意见的权利,我的智识只是在你们这样大神的总结下才慢慢成长起来的,对于你觉得我是在冷嘲热讽你活着怎么样,我也不会再多说别的,可能是你心情不好或者真被别人伤到过吧,但是对于我来说,我作为一个新人,我不是在等别人把东西喂到我嘴里我才会吃,我也在思考,我不会,所以我问,我不会所以我在论坛积极给分的去学习,去虚心的向你这样的大神学习,我从来不引用,我也就不在那里面感谢了,一并致谢,谢谢赵亮老师的帮助,可我以前真的没太过多的做过CGI的网页项目,刚刚大学毕业,会的东西不多,现在也是做一些基本的东西,叨扰到大神的地方也请大神见谅,最后再郑重感谢您对于我的帮助与回答!
[其他解释]
引用:
作为提问者,这种无视别人热心帮助的忘恩负义还加上冷嘲热讽,也算一个CSDN里负面典型的一个实例了.


我的这个帖子中的问题,真的无缘无故就好使了,您的回答我还没有试,但是对于读取JS那一块是真的好使了,貌似重启一下服务器就好使了,不知道是因为什么。

热点排行