将php变量传递给jQuery

时间:2012-08-14 08:54:06

标签: php javascript jquery

  

可能重复:
  Parse a JavaScript file through PHP

我一直在尝试将php变量传递给jQuery,但收效甚微。 这是我用来传递数据的代码部分:

 $('#submitAuto').click(function(){
          var isDelete = $("#autoDelete").val();
          var userID = "<?php echo $userData ; ?>" ;

但我发现userID值是字符串<?php echo $userData ; ?>,而不是$ userData值。

我该如何处理这个问题?

任何建议都会受到欢迎, 提前致谢

3 个答案:

答案 0 :(得分:3)

将JavaScript移至<script>标记内并放入PHP文件中。

除非文件扩展名为.php,否则您的服务器不会运行PHP。

这样使用json_encode()也许是个好主意:

var userID = <?php echo json_encode($userData); ?>;

这可以阻止字符串中有趣字符的任何问题。

答案 1 :(得分:0)

从第

行删除“”

var userID =&lt;?php echo $ userData; ?&GT;

你不应该在js中获取php代码,你应该将userData的值放在页面上的html元素中,然后你可以通过使用document.getElementByID等来读取它。

您可以使用隐藏字段获取userdata的值,然后您可以在javascript的帮助下读取userdata变量。

答案 2 :(得分:0)

任何包含PHP代码的文件都必须由PHP解析,以便在将代码从服务器发送到客户端之前将代码转换为其他代码,因为PHP仅在服务器上运行。

通常这意味着文件必须以.php结尾,除非您将服务器配置为通过PHP运行.js文件,否则只需将PHP代码放在.js文件中就行不通

.js文件重命名为.php大部分时间都可以使用,或者您可以将javascript包含在带有脚本标记的.php文件中,或者将服务器配置更改为解析.js个文件。在Apache中,您可以添加.htaccess:

AddType application/x-httpd-php .js
AddHandler x-httpd-php5 .js
<FilesMatch "\.(js|php)$">
SetHandler application/x-httpd-php
</FilesMatch>