将数组值传递给js

时间:2015-12-16 19:28:58

标签: javascript php

所以目前的设置如下:

PHP:data.php

<?php
$method = $_SERVER['REQUEST_METHOD'];
$data = array(
    "16508",
    "16498",
    "16506" 
);
if ($method === "GET") {    
    echo json_encode($data);
}
?>

JS:

$.get("./page_asset/data.php").then(function(returned) {
        data = JSON.parse(returned);    
};  

现在,如何在不获取特定php页面的情况下解析数据(因为我不想依赖于特定的php地址,例如“/page-asset/data.php”)。

例如:

PHP:

<?php
  $data = array(
    "16508",
    "16498",
    "16506" 
   );   
?>

我只想将这些值传递给js,而不依赖于页面网址。

2 个答案:

答案 0 :(得分:2)

您可以使用PHP在原始页面中创建Javascript。 json_encode()可用于将PHP值转换为类似的JS文字。

<?php
  $data = array(
    "16508",
    "16498",
    "16506" 
   );   
?>
<script>
var data = <?php echo json_encode($data); ?>;
</script>

答案 1 :(得分:1)

您可以使用隐藏字段:

<input id="my-data" type="hidden" value='<?php echo json_encode($data)?>' />

然后你可以解析javascript中的输入值:

var data = $.parseJSON($('#my-data').val());