如何将php数组的值传递给javascript数组?

我是从数据库得到|$arr数组,javascript有这样语句:<scriptlanguage='javascript'>............var云南=Array(... 我是从数据库得到|$arr数组,javascript有这样语句:
<script language='javascript'>
............ var 云南=Array("大理","昆明"); ........
</javascript>
现在我想把 "云南" 这个数组赋予 从数据库得到的 $arr数组,请明白人指点指点,我的财富不多,但是如果能帮我搞定,我会加分~~
先谢谢了
展开
 我来答
匿名用户
推荐于2016-06-13
展开全部
把对象数组转成JASON串,PHP收到后转化成JASON对象进行读取。
参考例子如下:
<script type="text/javascript" src="http://www.coding123.net/rardownload/20110420/20110420113851756.js"></script><!--倒入json.js文件,序列化json对象用的-->
<script type="text/javascript" src="http://www.coding123.net/js/jquery.js"></script>
<script type="text/javascript">
var zNodes =[
{ id:1, pId:0, name:"随意勾选 1", open:true},
{ id:11, pId:1, name:"随意勾选 1-1", open:true},
{ id:111, pId:11, name:"随意勾选 1-1-1"},
{ id:112, pId:11, name:"随意勾选 1-1-2"},
{ id:12, pId:1, name:"随意勾选 1-2", open:true},
{ id:121, pId:12, name:"随意勾选 1-2-1"},
{ id:122, pId:12, name:"随意勾选 1-2-2"},
{ id:2, pId:0, name:"随意勾选 2", checked:true, open:true},
{ id:21, pId:2, name:"随意勾选 2-1"},
{ id:22, pId:2, name:"随意勾选 2-2", open:true},
{ id:221, pId:22, name:"随意勾选 2-2-1", checked:true},
{ id:222, pId:22, name:"随意勾选 2-2-2"},
{ id:23, pId:2, name:"随意勾选 2-3"}
];

$.ajax({
url:'xxxx.php'//改为你的动态页
,type:'POST'
,data:{zNodes:zNodes.toJSONString()}//调用json.js类库将json对象转换为对应的JSON结构字符串
,success:function(rst){alert('PHP接收JSON数据成功!');}
,error:function(xhr){alert('PHP页面有错误!'+xhr.responseText);}
}});
</script>

$zNodes=$_POST["zNodes"];
$json=json_decode($zNodes);//转化为JSON对象
ys5955092
推荐于2016-03-30 · TA获得超过671个赞
知道小有建树答主
回答量:551
采纳率:100%
帮助的人:567万
展开全部
不能直接传递,但是可以用js的ajax在页面加载的时候动态调用php数组值
或者把用php处理的数组值当字符串先赋值给html hidden控件,然后用js代码调用hidden的value
另外我觉得,如果你的这个数据不是经常改变的话,最好是用php生成一个.js文件,这个文件就定义这个数组,然后file一下,比较好
追问
能给个具体事例吗?
追答
第一种:http://zhidao.baidu.com/question/144513438.html

第二种方法
http://zhidao.baidu.com/question/184686749.html
看下这个回答,其中有个“回答者: 陈学阳 ”的办法基本就是第二种
至于生成js数据文件,我这里没有现成的,就和用php生成php缓存文件是一个道理
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
莘赡05V
2015-04-16 · 知道合伙人软件行家
莘赡05V
知道合伙人软件行家
采纳数:1397 获赞数:3710
毕业安徽理工大学

向TA提问 私信TA
展开全部
在PHP端通过json_encode();将数组转化成JSON格式,
在html端javascript端获取有两种方式
第一种通过JSON控件将json数据返回成数组

第二种用eval()函数来解析JSON数据,两种都可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Phper
2011-04-07 · TA获得超过1210个赞
知道小有建树答主
回答量:625
采纳率:0%
帮助的人:675万
展开全部
<?php
$arr = array("大理","昆明");
$json = json_encode($arr);
?>
<script>
var jsarr = <?php echo $json;?>;
alert(jsarr[0]);
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
淘气包和哥
2011-04-06 · TA获得超过1455个赞
知道小有建树答主
回答量:2030
采纳率:0%
帮助的人:1459万
展开全部
<script language='javascript'>
............ var 云南=<?php $arr ?>; ........
</javascript>

大概应该是这样吧。我记得ASP是可以这样的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式