我正在使用drupal form api并使用复选框.我在默认检查值中遇到问题.以下是代码段...
$result = db_query("SELECT nid, filepath FROM {content_type_brand}, {files} WHERE content_type_brand.field_brand_image_fid
= files.fid");
$items = array();
while ($r = db_fetch_array($result)) {
array_push($items, $r);
}
$options = array();
foreach( $items as $i ) {
$imagePath = base_path().$i['filepath'];
$options[$i['nid']] = '<img src="'.$imagePath.'"></img>';
}
$form['favorite_brands'] = array (
'#type' => 'fieldset',
'#title' => t('Favorite Brands'),
//'#weight' => 5,
'#collapsible' => TRUE,
'#collapsed' => FALSE,
);
$form['favorite_brands']['brands_options']
= array(
'#type' => 'checkboxes',
'#options' => $options,
'#default_value' => $options_checked,// $options_checked is an array similar to $options but having elements which need to be checked by default...
'#multicolumn' => array('width' => 3)
);
Run Code Online (Sandbox Code Playgroud)
但默认情况下不会检查值...任何人都可以帮助我缺少什么?
谢谢
您的$ options_checked数组的格式不应与$ options数组相同.您的$ options数组包含nid => img标记对.您的$ options_checked数组应该只包含默认情况下应检查的选项的nid值:
$options_checked = array(8,17);
Run Code Online (Sandbox Code Playgroud)