我确信这对jQuery专家来说很简单,但我是后端人员,并且找不到最好的方法来完成此操作。我在Drupal中有两个数组,一个是视图名称列表,另一个是包含每个视图显示列表的数组。下面的代码来填充两个数组:Drupal动态选择表格
//load list of views in to array for select lists
$views = views_get_all_views();
$viewnames = array();
$viewdisplays = array();
foreach ($views as $view) {
$viewnames[$view->name] = $view->name;
foreach ($view->display as $k) {
$id = $k->id;
$title = $k->display_title;
$viewdisplays[$view->name]['id'] = $id;
$viewdisplays[$view->name]['title'] = $title;
}
}
这里的形式是我的工作片断:
$form['view'] = array(
'#type' => 'select',
'#title' => t('Select the view to be used for display'),
'#options' => $viewnames,
);
$form['view_display'] = array(
'#type' => 'select',
'#title' => t('Select the display of the gallery view to be used'),
'#options' => array(),
);
我想要做的,是动态填补view_display选择框适当的值。如果用户从'视图'选择了“我最喜欢的视图”选择,我想显示$ viewdisplays ['我最喜欢的视图']数组作为'view_display'字段的#选项。