度过了糟糕的一天。这个人整个早上一直困扰着我。我发现的所有解决方案都远远超出了我需要的位置。
我有一个我正在处理的遗留PHP / JS应用程序。我不会试图解释它,而只是展示我需要做的事情。
<?php
$phpDate_1 = new Date($someDate);
$phpDate_2 = new Date($someOtherDate);
//...There are a bunch of these
$phpDate_n = new Date($endOfTime);
<script language="javascript">
function myFunction() {
var line = aUserSelection; //an int from user which tells me what date to use
//Next line is the problem. I'm trying to pull the month from the appropriate PHP date into the JS variable.
var theMonth = "<?php echo $phpDate_" + line + "->getMonth();?>";
}
</script>
?>
我必须尝试过20到30个单引号和双引号,转义符,点,加号等组合,但我不断在“行”部分出错。意外的角色,包裹的字符串等。
希望有人可以指出我正确的方向,因为我的大脑在这一刻被炒了。纯JS和PHP的答案只是因为这就是应用程序的构建方式。感谢。
答案 0 :(得分:0)
您需要在输出javascript之前关闭您的php(?>
)以修复您获得的语法错误。
然而,话虽如此,您尝试将javascript line
变量合并到$phpDate
的变量名称中,以生成类似$phpDate_1
的内容。
如果您不想使用AJAX解决方案,最好的办法是将每行的日期输出到javascript数组中。强烈建议不要这样做,但如果这是遗留应用程序而无法进行多处更改,则可能是您唯一的选择。