0

这工作正常

<html>
<head>
<script src="jquery.js"></script>
<script>
    $(document).ready(function(){       
    var timeLeft = <?php echo '1279'; ?>;       

    $("#time").text(timeLeft); 
    });
</script>
</head>

<body>
    <div id="time"></div>
</body>
</html>

但这不是

<script>
    $(document).ready(function(){       
         var timeLeft = <?php echo strtotime("now"); ?>;       
         $("#time").text(timeLeft); 
    });
</script>

它给出了错误 Uncaught SyntaxError: Unexpected token < 。它是一个 php 扩展文件。

4

2 回答 2

0

尝试这个:

<script>
$(document).ready(function(){       
     var timeLeft = '<?php echo strtotime("now"); ?>';       
     $("#time").text(timeLeft); 
});
</script>
于 2013-01-08T11:17:25.987 回答
0

在javascript中直接使用php是非常危险的。因为 timetostr 可能会输出一些关于时区等的警告,并且您的代码将在没有任何视觉线索的情况下被破坏。

在我的项目中,如果我必须在我的 javascript 中使用任何 php 输出,我会创建隐藏的 div 并从 javascript 访问值:

<div class='hidden' id='values'>
<div class='val-time'><?php echo strtotime("now"); ?></div>
</div>

<script>
    $(document).ready(function(){       
         var timeLeft = $("#values .val-time").html();       
         $("#time").text(timeLeft);
    });
</script>

因此,每当您想调试代码时,只需从#values 中删除“隐藏”类,然后查看 PHP 输出了哪些值。

于 2013-04-29T10:56:36.310 回答