簡體   English   中英

使用PHP中的參數調用Javascript函數

[英]Call Javascript function with parameters inside PHP

我有一個javascript函數,它有一些參數(一個數組)。 我想在php里面調用它。 以下是我的代碼

 <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} 使用非關聯數組,您將獲得類似[1,2,3,4,5]的JavaScript 數組

<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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM