json_encode用php作为javascript函数的参数

问题描述:

i need a help to json_encode

i have a html

<a class="list_size" onclick="generate_size(<?php echo htmlspecialchars(json_encode($ukuran));?>);return false;" title="<?php echo $warna[$w]['warna']; ?>"><?php echo $warna[$w]['warna']; ?></a>

and this is the json of php variable of $ukuran

echo json_encode($ukuran);
output : [{"uk":"26"},{"uk":"27"},{"uk":"28"},{"uk":"29"},{"uk":"30"},{"uk":"31"},{"uk":"32"},{"uk":"33"},{"uk":"34"},{"uk":"35"}]

and this is the function of javascript

function generate_size(ukuran) {

    alert(ukuran.length + ukuran.uk[0])
}

when i using alert(ukuran.length) that will shown alert with 10, and that is correct.. but when i using alert(ukuran.length + ukuran.uk[0]) i fail tu call this function..

if i see the json_encode above, if i alert(ukuran.uk[0]) that should be shown 26

how to solve this problem.. i try to found it at google but not found working solution, can someone help me?? thanks

我需要json_encode的帮助 p>

我有一个html p >

 &lt; a class =“list_size”onclick =“generate_size(&lt;?php echo htmlspecialchars(json_encode($ ukuran));?&gt;); return false;”  title =“&lt;?php echo $ warna [$ w] ['warna'];?&gt;”&gt;&lt;?php echo $ warna [$ w] ['warna'];  ?&gt;&lt; / a&gt; 
  code>  pre> 
 
 

这是$ ukuran的php变量的json p>

   echo json_encode($ ukuran); 
output:[{“uk”:“26”},{“uk”:“27”},{“uk”:“28”},{“uk”:“29”}  ,{ “英国”: “30”},{ “英国”: “31”},{ “英国”: “32”},{ “英国”: “33”},{ “英国”: “34”}  ,{“uk”:“35”}] 
  code>  pre> 
 
 

这是javascript p>

 函数的功能 generate_size(ukuran){
 
 alert(ukuran.length + ukuran.uk [0])
} 
  code>  pre> 
 
 

当我使用 alert时( ukuran.length) code>将显示10的警报,这是正确的..但当我使用 alert(ukuran.length + ukuran.uk [0]) code>我失败时调用此 函数.. p>

如果我看到上面的json_encode,如果i alert(ukuran.uk [0]) code>应该显示26 p>

如何解决这个问题..我试图在谷歌找到它但没有找到工作解决方案, 有人帮我? 谢谢 p> div>

It appears that ukuran[0] is {"uk":"26"} and not simply 26. Are you sure you aren't looking for ukuran[0].uk?

Try casting your string to an int

alert(ukuran.length + parseInt(ukuran.uk[0]));