javascript - 使用 php 检索到的参数调用 javascript 方法

标签 javascript php html

我在单独的 js 文件中有一个 javascript 方法,我想使用 php 参数从 HTML 页面调用该方法。

<?php

        include "connection.php";

        $selectedpatient = $_POST['patient_dropdown'];

        $myquery = "SELECT * FROM `patient_info` patient_info.Name = '$selectedpatient' ";

        $query = mysql_query($myquery);

            if ( ! $query ) {
                echo mysql_error();
                die;
            }

            $data = array();

            for ($x = 0; $x < mysql_num_rows($query); $x++) {
                $data[] = mysql_fetch_assoc($query);
            }

         $tempdata = json_encode($data);
    ?>

        <script> data_arrival($_tempdata); </script>

我在 HTML header 中定义了 javascript 文件的源。它显示两个错误:

1) javascript 文件中的解析错误 - 这是可以理解的,因为我将 javascript 文件包含在 header 中,并且该文件在 php 实际检索任何数据之前执行。

2) data_arrival 方法未定义

我该如何解决这个问题?我想将 $tempdata (在由 php 填充之后)作为参数传递给 data_arrival 方法。

提前致谢!

最佳答案

  1. 首先:首先执行的是 PHP,而不是 JavaScript。在您的示例中,情况不可能相反。
  2. data_arrival 未定义...因为您根本没有定义它,或者因为它是在调用后定义的。

要将值从 PHP 传递到 JavaScript,您可以使用:

data_arrival(<?php echo $_tempdata; ?>);

它将生成如下内容:

data_arrival([a, b, c, d, ...]);

当然,data_arrival函数需要在执行之前定义。

编辑

也许最好使用相同的变量名称:$_tempdata$tempdata

关于javascript - 使用 php 检索到的参数调用 javascript 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23720754/

相关文章:

javascript - 在 jQuery 中连续滚动包含图像的水平滚动条?

java - Java 中的 AES 加密与 PHP 不同

PHP如何动态实例化一个类

php - MySQL直接运行但CodeIgniter出现语法错误

html - 如何去掉navbar logo和navbar menu之间的空格和navbar logo后面的文字

html - CSS 边框动画适用于整个 Div 内容

javascript - 如何将我的 Mustache/Handlebars 模板存储在单独的文件中?

javascript - 谷歌地图MarkerClusterer不聚类

javascript - Uncaught Error : [$rootScope:infdig]

javascript - jQuery scroll() 事件不会传播