如何使用json选择下拉菜单

时间:2012-06-25 17:41:44

标签: php json select

我想要一个带有此脚本的选择下拉菜单:LINK

我有一个脚本,它已经在制作json格式的数据,我想用同一个来填充2个菜单。例如,我想要有2个菜单,其中包含drivercars

这是剧本:

echo '{ "results" : [ ';

$gettruck_result = dbMySql::Exec(.........query.........);
$result_array = array();

while($row = mysql_fetch_assoc($gettruck_result)){

  $row_object = '{';
  $row_object .= '"id": "' . $row['id'] . '", ';
  $row_object .= '"driver": "' . $row['drivers'] . '", ';
  $row_object .= '"trucks": "' . $row['trucks'] . '", ';
  $row_object .= '}';    
  $result_array[] = $row_object;
}
$result_str = implode(", ", $result_array);
echo $result_str;
echo " ] }";
?>

这是他们在文档中的内容:

[{text:'Lorem', value:'5', title:'icons/enabled.gif'},{text:'Ipsum', value:'6',title:'icons/enabled.gif'}]

我希望有类似的东西: 1.加载驱动程序时:text应为驱动程序名称,value应为id,title为某些图片 2.装载卡车时:text应为卡车名称,value应为ID,title为不同图标。

我可以同时调用脚本一次吗?

1 个答案:

答案 0 :(得分:1)

你知道有一个php函数可以将对象/数组编码为json吗?

json_encode http://www.php.net/json_encode

我认为最简单的方法是: 1)提供这样的嵌套结构:

drivers {
    text: 'Lorem',
    value: '5',
    title: 'icons/enabled.gif',
    trucks: {
        text: 'Ipsum',
        value: '4',
        title: 'icons/foo.gif',

...

2)另一种选择是在用户选择驱动程序时进行ajax调用。这个ajax调用的返回包含了该特定驱动程序的所有卡车。