Rumah >pembangunan bahagian belakang >masalah PHP >PHP输出的js不执行怎么办

PHP输出的js不执行怎么办

angryTom
angryTomasal
2019-11-04 17:01:173724semak imbas

PHP输出的js不执行怎么办

PHP输出的js不执行

<?php
    echo "<script>alert(&#39;我弹出来了&#39;)</script>";
?>

一句话就可以在PHP里面输出JS脚本让浏览器执行。(推荐:《PHP教程》)

但是今天碰到一个很诡异的问题,就是这段代码在Chrom和firefox下只是单纯的输出字符串,没有执行,没有弹出alert。

原理:

MIME chrome对text/plain 不做解析的。php利用header可以输出html ,浏览器用最后一次输出header作为content-type

header(&#39;Content-Type:text/html;charset=utf-8&#39;);

text/plain html是不执行的。

只需要在alert前重新header即可。

if(!uploadFile())
{
    echo "<script>alert(&#39;上传文件失败&#39;)</script>";    
}
header(&#39;Content-Type:text/html;charset=utf-8&#39;);
echo ("")

Atas ialah kandungan terperinci PHP输出的js不执行怎么办. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php项目中的接口怎么写Artikel seterusnya:php手机无法跳转域名