Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/247.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将PHP变量传递给Javascript代码_Php_Javascript - Fatal编程技术网

将PHP变量传递给Javascript代码

将PHP变量传递给Javascript代码,php,javascript,Php,Javascript,我在PHP中获得了一个值,并希望在javascript中使用它 有没有办法做到这一点 这是我正在使用的代码,它不起作用 $var = "abc"; document.getElementById(<?php echo $act;?>).class="active"; 我正在getElementById方法中使用echo$var。您的代码应该如下所示: <script type="text/javascript"> document.getElementByI

我在PHP中获得了一个值,并希望在javascript中使用它

有没有办法做到这一点

这是我正在使用的代码,它不起作用

$var = "abc"; 

document.getElementById(<?php echo $act;?>).class="active";

我正在getElementById方法中使用echo$var。

您的代码应该如下所示:

<script type="text/javascript">
    document.getElementById("<?php echo($var); ?>").className = "active";
</script>

请注意,要在JavaScript中更改类,您必须使用className属性而不是class来访问它。

您的代码应该如下所示:

<script type="text/javascript">
    document.getElementById("<?php echo($var); ?>").className = "active";
</script>
请注意,要更改JavaScript中的类,您必须使用className属性而不是class来访问它。

如果JavaScript中的PHP代码放在.PHP文件中,则这应该可以工作,该文件由PHP执行,而.js文件则不可以

请注意,应在传递给getElementById的id周围加引号:

当然,您的JS代码必须放在标记之间:

如果Javascript中的PHP代码放在一个.PHP文件中,这应该是可行的——该文件由PHP执行,而.js文件则不是

请注意,应在传递给getElementById的id周围加引号:

当然,您的JS代码必须放在标记之间:


这是正确的用法,除了一件事:document.getElementById需要一个字符串,但是当您回显$act时,您得到的是不带引号的abc。所以你需要做:

document.getElementById("<?php echo $act;?>").className ="active";

这是正确的用法,除了一件事:document.getElementById需要一个字符串,但是当您回显$act时,您得到的是不带引号的abc。所以你需要做:

document.getElementById("<?php echo $act;?>").className ="active";

是的,应该行。但请注意,PHP是一个预处理器,因此您的代码最终将是:

document.getElementById(abc).class="active";
而不是:

document.getElementById("abc").class="active";

请注意缺少的引号。无论如何,我假设您使用的名称是正确的,在您的帖子中您声明了$var,但回显了$act。

是的,应该可以。但请注意,PHP是一个预处理器,因此您的代码最终将是:

document.getElementById(abc).class="active";
而不是:

document.getElementById("abc").class="active";

请注意缺少的引号。无论如何,我假设您使用的名称是正确的,在您的帖子中您声明了$var,但回显了$act。

它应该是className而不是class,顺便说一句。它应该是className而不是class,顺便说一句。哦,没有注意到;在这一方面,你的答案比我的好:应该是className而不是class,顺便说一句。哦,我没注意到这一点;下面是对您的答案的一次投票,这一点比我的答案要好:-您可以通过使用json_encode,例如document.getElementById.className=active;,使答案更简单、更安全;。通过使用json_encode,例如document.getElementById.className=active;,您可能会使它变得更简单、更安全;。