在JQuery中使用PHP变量

Aar*_*her 8 php jquery

无论如何我可以在JQuery脚本中使用php变量吗?

例:

  • PHP变量: $sr2
  • 摘录JQuery脚本(带变量): $('#a2_bottom_$sr2')

我怎样才能使变量在JQuery部分中有效?

谢谢

Mar*_*c B 10

PHP在服务器上运行,jquery在客户端上运行.如果你想让一个PHP变量可用于jquery(以及扩展名,底层的javascript引擎),你必须在服务器上输出页面时发送变量的值,例如

<script type="text/javascript">
    var my_php_var = <?php echo json_encode($the_php_var) ?>;
</script>
Run Code Online (Sandbox Code Playgroud)

或通过AJAX调用检索值,这意味着您基本上创建了一个Web服务.

  • json_encode为+1; 我认为至关重要的是,如果我们要讨论将变量打印为JS代码,我们将讨论如何避免破坏它:) (4认同)

Lix*_*Lix 9

您可以简单地做的是使用您的PHP来回显代码以启动JavaScript变量.

<script type="text/javascript">
<?php

  $phpVar = "foo";
  echo "var phpVariable = '{$phpVar}';";

?>
</script>
Run Code Online (Sandbox Code Playgroud)

一旦PHP代码被解析,并且HTML被发送给用户 - 他们将看到的只是PHP回声的结果 -

<script type="text/javascript">
  var phpVariable = 'foo';
</script>
Run Code Online (Sandbox Code Playgroud)

现在您phpVariable可以使用JavaScript了!所以你像在任何其他情况下一样使用它 -

$("div."+phpVariable);
Run Code Online (Sandbox Code Playgroud)

这将检索我们任何类的<div>元素foo-

<div class="foo"></div>
Run Code Online (Sandbox Code Playgroud)


Eva*_*ski 5

假设您的 jQuery 在同一个文件中:

... $('#a2_bottom_<?php echo $sr2 ?>') ...
Run Code Online (Sandbox Code Playgroud)


Fos*_*sco 5

您可以在脚本标记中将其作为页面的一部分输出...即

<script type="text/javascript">
<?php
echo "var sr2 = \"" . $sr2 . "\"";
?>
</script>
Run Code Online (Sandbox Code Playgroud)

然后你的jQuery行就可以访问它了:

$('#a2_bottom_' + sr2)
Run Code Online (Sandbox Code Playgroud)