如何将php数组传递给jquery并转换为json?
如何将php数组传递给jquery并转换为json?
如何在php4中使用精简的语言将一个数组存储在一个隐藏的div中,以便jquery可以获取并将其转换为json对象?我试图将一组数据传递给gmap,以便加载多个标记,但似乎无法弄清楚如何将php数组传递给jquery,然后将其转换为json对象。
我尝试使用一个自定义的json编码类来将php数组编码为json,但问题是它输出了一堆乱码字符,并且似乎导致了jquery代码中的错误。这是我在php中创建的数组:
$map_array[] = array('latitude' => $result_latitude,'longitude' => $result_longitude,'html' => $result_html,'title' => $result_name,'icon' => array('image' => '/pathtoicon' .$mapi .'.png','iconsize' => array(27,27))); $map_json = $json->encode($map_array);
然后在jquery中:
var mapcoords = $('#mapcoord').html(); $('#rmap').gMap( { zoom: 10, markers:$.parseJSON(mapcoords) } );
当我这样做时,我会得到这个错误:
“SyntaxError: JSON.parse: unexpected non-whitespace character after JSON data”
如果我使用var mapcoords = $('#mapcoord').text();,这个方法是可以工作的。问题是,它会剥离掉html代码。那么我该如何将php数组传递给jquery,并能够保留html代码呢?