我确信这对 jQuery 专家来说是一件容易的事,但我是一名后端人员,找不到最好的方法来做到这一点。我在 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['My Favorite View'] 数组显示为“view_display”字段的#options。