【问题标题】:How to insert php code in a javascript file如何在 javascript 文件中插入 php 代码
【发布时间】:2014-03-19 06:16:27
【问题描述】:

我正在尝试为 jQuery Cycle Slideshow 使用 php 代码 sn-p,但控制台给了我这个错误:

"Uncaught SyntaxError: Unexpected token

var startingSlide = <?php echo $_GET["thumb"] ?>;

$(slideshowContainer).cycle ({
    startingSlide: startingSlide
});

如何正确使用 PHP 代码?

非常感谢您的帮助。

【问题讨论】:

  • PHP 语句后不需要分号吗?
  • 你需要 var startingSlide = "";仅当您的 .js 文件已添加为执行 PHP 的处理程序时。
  • @Mr.Polywhirl 不在 php 中的最后一条语句上:php.net/manual/en/…

标签: javascript php jquery jquery-cycle


【解决方案1】:

PHP 不会解析以.js 结尾的文件,但是您可以让 PHP 解析器解析 javascript 文件,但这是一个非常糟糕的主意,而是将 PHP 插入到它所属的 PHP 文件中,然后获取数据用javascript

<div id="some_element" data-startingslide="<?php echo $_GET["thumb"] ?>"></div>

然后做

var startingSlide = $('#some_element').data('startingslide')

$(slideshowContainer).cycle ({
    startingSlide: startingSlide
});

【讨论】:

  • 为什么它属于那里而不是直接回显到一个变量?
  • @bobkingof12vs - 答案中没有解释吗?问题的标题是“javascript 文件”,并且 javascript 文件不被 PHP 解析。当然,您可以将值回显到全局,但它仍然会在 PHP 代码所属的 PHP 文件中,而不是在 javascript 文件中,并且使用数据属性似乎比全局更合适。
  • 啊,我以为你的意思是回显变量所属的 php,看到你像你一样将它回显到一个 div 而不是像 op 那样回显到一个全局。我想我的问题更多是你为什么回声到 div 而不是全局?
  • 因为全局变量不好!
  • 但是,你还是把它带到了一个全局变量中,你只是通过div停下来了……你为什么通过div停下来?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-10-21
  • 2012-03-28
  • 1970-01-01
  • 2020-05-21
  • 2022-01-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多