在我的php中,我进行了一个db调用,结果是
$options = mysqli_fetch_array($result);现在,我想调用javascript方法并传递这个函数。我的javascript方法看起来像
function myFunction(options){
//iterate over each option
}我所做的就是
<?php echo "<script>myFunction('".$options."')</script>";这给我的服务器上的错误,我正在做数组到字符串转换。
我认为javascript决定了运行时的数据类型,因此我不会介意。有人能告诉我正确的方法吗?
谢谢
发布于 2015-06-18 04:23:00
要让PHP打印出JavaScript可以使用的数组,可以将数组转换为JSON字符串,然后直接回显。
# Convert PHP array to JSON array
$json_options = json_encode($options);
# Echo JavaScript and JSON without single quotes
<?php echo "<script>myFunction(".$json_options.")</script>";发布于 2015-06-18 04:31:45
不能将php数组作为数组传递给javascript函数。但是,您可以按照Grokify的说明传递它,也可以将它直接传递给您的javascript变量,如果您的函数位于同一个页面上,则将其分配到php环境中。
function myFunction(){
var options = <?php echo json_encode($options); ?>;
}发布于 2015-06-18 04:39:35
首先,声明您的JS功能。
function myFunction(options){
options = JSON.parse(options);
for(var i=0; i<= options.length; i++){
console.log(options[i]);
}
}在PHP端,将数组转换为JSON并将其传递给JS函数
$json = json_encode($options);
# Echo JavaScript and JSON without single quotes
<?php echo "<script>myFunction(".$json.")</script>";https://stackoverflow.com/questions/30906343
复制相似问题