我收到此错误 Uncaught SyntaxError:来自chrome的意外 token <,但在FireFox上一切正常。
我发现了很多类似的帖子,但没有解决方案。

因此,我想知道是否有一种方法可以在构建完第二个页面并将其自身的标题发送到浏览器之后。
当我看到Firefox放置了这个想法时,我在下面的函数中回显了什么,即html结束标记之后,而Chrome则将其放置在结束标记之前。

基本上,我喜欢按以下顺序发送:

header('Content-Type: text/html; charset= utf-8');
<html></html>

header('Content-Type: text/javascript; charset= utf-8');
<script></script>

这是我的php脚本,我想取消注释 header 代码并独立于html页面发送它。
public static function jsShow($html)
{
    //header('Content-Type: text/javascript; charset= utf-8');
    echo "
        <script type=\"text/javascript\">
        var e = document.getElementById('message');
        e.innerHTML = $html ;
        e.style.display = 'block';
        </script>";
}

这是该页面在Firefox中的外观,并且可以正常工作:
</body>
</html>

<script type="text/javascript">
var e = document.getElementById('message');
e.innerHTML = <ul style="list-style: none; margin: 0; padding: 0;">
<li style="background-color: #0000FF; margin: 0;"><img src="/asset/icon/info.gif" alt="Info: " /> working</li>
<li style="background-color: #008000; margin: 0;"><img src="/asset/icon/success.gif" alt="Success: " /> Got it</li>
</ul>
 ;
e.style.display = 'block';

</script>

我以为我可以使用ob_start()和ob_end_flush(),但是您不能仅使用内容来控制 header 。

最佳答案

...

        e.innerHTML = " . json_encode($html) . " ;

关于php - 使用Chrome : Uncaught SyntaxError: Unexpected token <,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8697211/

10-13 09:23