如果它是一个 php 文件,并且有 html、php、css 和 javascript,我应该在 header() php 函数中设置什么作为网页的内容类型?
header('Content-type: text/html; charset=utf-8');
因为上面的那个脚本不起作用,当我查看 i-frame 的源代码时,没有包含 javascript,为什么会发生这种情况?
您(大概)没有将 PHP 交付给客户端,而是在服务器上运行它以生成一些输出。由于它没有发送给客户端,因此您不应该告诉客户端任何有关它的信息。
剩下的内容不能简单的“HTML + CSS + JS”。您可能拥有嵌入了CSS 和 JS 的 HTML。这是一个 HTML 文档。嵌入内容的类型由 HTML 描述。
使用text/html
内容类型(您不必指定,因为如果您没有另外说明,PHP 默认输出一个)。
没有body标签
所以您输出的是 HTML 片段而不是完整的 HTML 文档?据我所知,没有标准的 MIME 类型。
问题是,javascript没有被识别
这几乎肯定与您操作原始文档的方式有关(可能使用innerHTML
(将包含JavaScript 的内容分配给 innerHTML 导致 JS 被忽略)),然后与您将数据传递到浏览器的方式有关。
text/html
您的代码将在运行时处理并输出为 html。