php - 在 PHP 中调用带参数的 Javascript 函数

标签 php javascript function

我有一个 javascript 函数,它有一些参数(一个数组)。我想在 php.ini 中调用它。以下是我的代码

 <script type="text/javascript">

<?php 

$task_list=array();
        foreach($tasks as $row2){


            $task_list=$row2;
        }

         echo "display_diagram(".$task_list.");";

        ?>

function display_diagram(var1){

     .........................
     .........................

 }

当我在没有任何参数的情况下调用它时它工作正常(我可以在 javascript 函数中显示内容。但是当我提供参数时(它是一个数组它不工作。你能给这个解决方案吗?

最佳答案

这里通常的做法是创建一个单独的 PHP 文件来输出 JSON 数据并使用 AJAX 请求获取该数据。下面是一个包含内联 JSON 数据的示例,但我通常不建议这样做,尤其是在数据非常大的情况下。


使用json_encode()将 PHP 变量转换为可以在 JavaScript 中使用的变量。使用关联数组,您将获得一个 JavaScript 对象,例如 {"a":1,"b":2,"c":3,"d":4,"e ":5}。使用非关联数组,您将获得一个 JavaScript 数组,如 [1,2,3,4,5]

<script>
<?php
    $tasks = array(
        145 => array(
            'name' => 'Sorting Task',
            'owner' => 'user1'
        ),
        2343 => array(
            'name' => 'Processing Task',
            'owner' => 'user2'
        ),
        7266 => array(
            'name' => 'Another Task',
            'owner' => 'user1'
        ),
        8373 => array(
            'name' => 'Lorem Ipsum Task',
            'owner' => 'user3'
        )
    );
    echo 'display_diagram(' . json_encode($tasks) . ')';
?>

function display_diagram(tasks) {
    $.each(tasks, function (id, task) {
        console.log('Task #' + id + ': name=' + task.name + ', owner=' + task.owner);
    });
}
</script>

上面的 JavaScript 使用 jQuery 来处理对象。它应该在 JavaScript 控制台中输出以下内容:

Task #145: name=Sorting Task, owner=user1
Task #2343: name=Processing Task, owner=user2
Task #7266: name=Another Task, owner=user1
Task #8373: name=Lorem Ipsum Task, owner=user3

关于php - 在 PHP 中调用带参数的 Javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18551793/

相关文章:

php - 将结帐表单中的字段获取到 calculate_shipping

c++ - 递归函数有助于显示反向数字

javascript - 最大质因数函数运行速度太慢

c - 引用指针时遇到段错误

php - 向 Googlebot 隐藏内容

PHP 下拉框根据选择重定向到不同的 URL?

php - 如何在 WooCommerce 中更新可变产品的每个产品变体

javascript - 单击时停止 JavaScript 中的自动选项卡切换

javascript - 我不理解 Javascript 中删除重复项的 filter() 方法。

javascript - 尝试从 meteor 中的vimeo api返回json数据