将php变量传递给jQuery

时间:2012-10-03 08:38:59

标签: php jquery

  

可能重复:
  How to access PHP variables in JavaScript or jQuery rather than <?php echo $variable ?>

这可能已被覆盖,但我想知道是否可以将php变量传递给jQuery选择器。

我有一个名为$ tDate的变量,我希望能够在此代码中使用它:

$('$tDate').backstretch([
          "pot-holder.jpg",
          "coffee.jpg",
          "dome.jpg"
        ], {
            fade: 750,
            duration: 4000
        });

3 个答案:

答案 0 :(得分:3)

我建议在单独的.js文件中尽可能多地保留您的javascript。但是你可以在php生成的html中设置javascript变量,如下所示:

<html>
  <head>
    <title>PHP variables to Javascript</title>
    <script type="text/javascript">
    var myVar = <?php echo $myVar; ?>;
    </script>
    <!-- you can use that variable in your .js files 
         that are loaded after setting the variable -->
    <script src="/javascripts/myjavascript.js"></script>

  </head>
  <body>
    <h1>Passing php variables to javascript</h1>
  </body>
  </html>

你的javascript可以像这样使用那个变量:

// I assume myVar is a string
$(myVar).backstretch
...

这对我来说似乎很好,很整洁。我不喜欢使用服务器端代码来混淆我的客户端代码。如果你将来在某个地方弄乱你的PHP变量,你可以很容易地检测到它,因为它会在变量上引发一个异常,而不是jQuery阻止不可读的错误。

答案 1 :(得分:2)

$('<?PHP echo $tDate; ?>').backstretch([
      "pot-holder.jpg",
      "coffee.jpg",
      "dome.jpg"
    ], {
        fade: 750,
        duration: 4000
    });

答案 2 :(得分:0)

    <?php $tDate = "varXYZ";?>
    $('$<?php echo $tDate; ?>').backstretch([
      "pot-holder.jpg",
      "coffee.jpg",
      "dome.jpg"
    ], {
        fade: 750,
        duration: 4000
    });