js变量如何用 php页面 传到html页面一个数组$Itemname js怎么接受?我直接用了 好像不对 我新手 求助啊html页面 用<? var_dump($Itemname) ?> 有值! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 var a='<?php echo json_encode($Itemname) ?>'; 变量: var a='<?php echo $Itemname ?>';数组: var a='<?php echo json_encode($Itemname) ?>'; var a='<?php echo json_encode($Itemname) ?>';是错误的,这样js得到的只是一个字符串要这样才可以var a=<?php echo json_encode($Itemname) ?>; 我们网站用的是gbk的 这可如何是好 json_encode 只支持 utf-8 array(59) { [0]=> array(1) { [0]=> string(4) "咳嗽" } [1]=> array(1) { [0]=> string(6) "肺气肿" } [2]=> array(1) { [0]=> string(12) "慢性支气管炎" } [3]=> array(1) { [0]=> string(4) "哮喘" } [4]=> array(1) { 1,确定php文件是utf8的。2,给返回的页面加<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />3,如4楼所说,JS执行时会根据[]还是{}分别生成数组或者对象,看你json_encode的结果长什么样了。 全站 都是gbk的 只改这页utf 8 好像不合适吧 js方面我是新手 辛苦各位了 如果希望js做decode,那么很明显就应该是#3楼说的带上'',没问题。4楼的很明显是构造一个JS数组或者对象的办法,json里有非ascii字符的时候,那些Unicode标记很明显不是想创建对象的意图,应该使用3楼的方法,并且添加js的json_decode解开字符串, 打印js对象。 只能告诉你json_encode只支持utf8,如果希望php源文件使用gbk,那么需要对所有的内容作urlencode/base64之类的转成普通ASCII字节,然后做json_encode,并且<meta>指定gbk,在js端做json_decode后urldecode拿到实际的值。 为了不误导楼主,JSON.parse用来JS解析json串。 人家都说了是 gbk 的了function recursive_urlencode(&$val) { if(is_array($val)) foreach($val as &$v) Recursive($v); else $val = urlencode($val);}echo urldecode( json_encode( recursive_urlencode($你的数组) ) ); sorry 没懂,,如果json_encode 网上搜只支持utf-8 我数据库取来的汉字是 gbk 需要转码然后 解码? var ar_name=<?php echo json_encode($Itemname) ?>; for(var i =0 ; i < ar_name.length ; i ++){ alert(ar_name[i][0]);}试了一下 乱码 1,读数据库,对fetch得到的每一行的每一列,做urlencode, 得到一个包含若干row的$table。2,<head><meta ... gbk><script type="text/javascript">var ar_name = <?php echo "'" . json_encode($table) . "'"; ?>var obj = JSON.parse(ar_name);<!--用JS遍历这个obj对象--></script></head> JS遍历的时候,要encodeURIComponent各个键值。 JS遍历的时候,要decodeURIComponent各个键值。 - -. 精力时间有限 我直接传 字符串了......有空回家了 慢慢研究一下还是谢谢xuzuning (唠叨) qq120848369 (baidu码畜阶级.) jordan102 (一起混吧) .祝你们工作顺利 感谢你们帮助 php中如何用正则替换,但忽略标签内的内容? [求助]php编译参数--enable-embed和freetype支持问题 如何根据一个域名,获取它的根域名啊? 200分求助(PHP如何防止用户重复登录????) 什么是二进制安全的? 如何读出html里的<title></title>中的内容??? 一个表单两个提交怎么解决 thinkphp uploadify图片上传后表单提交 这个流程应该怎么设计 php如何输出unicode编码的txt文件 保留两位小数 进一怎么弄? PHP exec("net user")函数在服务器下面执行无效. 如何从一个数组里拆出一部分作为一个新数组。
数组: var a='<?php echo json_encode($Itemname) ?>';
是错误的,这样js得到的只是一个字符串
要这样才可以
var a=<?php echo json_encode($Itemname) ?>;
[0]=>
array(1) {
[0]=>
string(4) "咳嗽"
}
[1]=>
array(1) {
[0]=>
string(6) "肺气肿"
}
[2]=>
array(1) {
[0]=>
string(12) "慢性支气管炎"
}
[3]=>
array(1) {
[0]=>
string(4) "哮喘"
}
[4]=>
array(1) {
2,给返回的页面加<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
3,如4楼所说,JS执行时会根据[]还是{}分别生成数组或者对象,看你json_encode的结果长什么样了。
如果希望js做decode,那么很明显就应该是#3楼说的带上'',没问题。
4楼的很明显是构造一个JS数组或者对象的办法,json里有非ascii字符的时候,那些Unicode标记很明显不是想创建对象的意图,应该使用3楼的方法,并且添加js的json_decode解开字符串, 打印js对象。
只能告诉你json_encode只支持utf8,如果希望php源文件使用gbk,那么需要对所有的内容作urlencode/base64之类的转成普通ASCII字节,然后做json_encode,并且<meta>指定gbk,在js端做json_decode后urldecode拿到实际的值。
function recursive_urlencode(&$val) {
if(is_array($val)) foreach($val as &$v) Recursive($v);
else $val = urlencode($val);
}echo urldecode( json_encode( recursive_urlencode($你的数组) ) );
var ar_name=<?php echo json_encode($Itemname) ?>;
for(var i =0 ; i < ar_name.length ; i ++){
alert(ar_name[i][0]);
}
试了一下 乱码
1,读数据库,对fetch得到的每一行的每一列,做urlencode, 得到一个包含若干row的$table。
2,
<head>
<meta ... gbk>
<script type="text/javascript">
var ar_name = <?php echo "'" . json_encode($table) . "'"; ?>
var obj = JSON.parse(ar_name);
<!--用JS遍历这个obj对象-->
</script>
</head>
JS遍历的时候,要encodeURIComponent各个键值。
JS遍历的时候,要decodeURIComponent各个键值。
还是谢谢
xuzuning
(唠叨)
qq120848369
(baidu码畜阶级.)
jordan102
(一起混吧)
.
祝你们工作顺利 感谢你们帮助