【问题标题】:Passing simple php date variable to javascript [duplicate]将简单的php日期变量传递给javascript [重复]
【发布时间】:2019-10-21 13:34:49
【问题描述】:

我有这个 php:

<?php
$mytestdate = "Oct 23, 2019 20:00:00";
?>

这个 javascript 没有给我所需的输出:

<script>
var mydate = "<?php echo $mytestdate; ?>";
// Set the date we're counting down to
var countDownDate = new Date(mydate).getTime();
</script>

这个 javascript 确实给了我想要的输出:

<script>
var mydate = "<?php echo $mytestdate; ?>";
// Set the date we're counting down to
var countDownDate = new Date("Oct 23, 2019 20:00:00").getTime();
</script>

怎么了?!

输出为空或“NaNd NaNh NaNm NaNs”。

【问题讨论】:

  • 你应该永远混合使用 PHP 和 JS - 它们是不同的语言,执行方式不同
  • 您的 (html) 源代码揭示了什么?
  • 试试console.log(mydate),先看看里面有什么,从那里你就知道哪里出了问题
  • 你的 mytestdate 来自哪里
  • 希望对您有所帮助:stackoverflow.com/questions/46109832/…

标签: javascript php datetime


【解决方案1】:

因此,当您尝试在 HTML 文件中运行此代码时,您会得到NaN,正如您所声称的那样,

<!DOCTYPE html>
<html>
<body>
  <?php
   $mytestdate = "Oct 23, 2019 20:00:00";
  ?>
<script>
  var mydate = "<?php echo $mytestdate; ?>";
  var countDownDate = new Date(mydate).getTime();
  alert(countDownDate);
</script>

</body>
</html>

现在,尝试将其保存在扩展名为 .php 的文件中。该代码将起作用并返回您预期的结果

【讨论】:

  • 这是浏览器源代码中显示的内容。它似乎没有输出php。
  • @NeilReardon:也就是说,你的文件扩展名是 .PHP 而不是 .HTML 对吧?
  • 将您的变量存储在隐藏输入中,然后在您的 javascript @NeilReardon 中获取此隐藏输入值
  • @BilalSiddiqui:我喜欢你的回答...
猜你喜欢
  • 2014-01-11
  • 2016-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多