1

可能重复:
通过 PHP 解析 JavaScript 文件

我一直在尝试将 php 变量传递给 jQuery ,但没有多大成功。这是我用来传递数据的代码部分:

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

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

我该如何处理这个问题?

任何建议都将受到欢迎,在此先感谢

4

3 回答 3

3

将 JavaScript 移动到<script>标签内并放置在 PHP 文件中。

您的服务器不会运行 PHP,除非它具有 .php 文件扩展名。

像这样使用也可能是一个好主意json_encode()

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

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

于 2012-08-14T09:01:31.827 回答
0

从行中删除“”

var userID = <?php echo $userData; ?>

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

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

于 2012-08-14T08:56:58.990 回答
0

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

通常这意味着文件必须以 结尾.php,并且仅将 PHP 代码粘贴到.js文件中是行不通的,除非您将服务器配置为.js通过 PHP 运行文件。

大多数情况下,只需将.js文件重命名为即可,或者您可以将 javascript 包含在带有脚本标签的文件中,或者将服务器配置更改为也解析文件。在 Apache 中,您可以添加到 .htaccess :.php.php.js

AddType application/x-httpd-php .js
AddHandler x-httpd-php5 .js
<FilesMatch "\.(js|php)$">
SetHandler application/x-httpd-php
</FilesMatch>
于 2012-08-14T09:01:38.673 回答