所以我在我的形式創建我的複選框Drupal的形式API複選框的狀態
$form['existing_customer'] = array(
'#type' => 'checkbox',
'#title' => t('Are you an existing customer'),
'#ajax' => array(
'callback' => 'checkbox_selected',
'wrapper' => 'subject',
),);
這就需要我的功能,並在我的複選框改變值
問題是我不能讓它轉回來,如果它是未經檢查的
function checkbox_selected(&$form, &$form_state) {
if ($form_state['values']['existing_customer'] == 1) {
$my_options = array('select' => t('Select'), 'mr' => t('Mr'), 'mrs' => t('Mrs'), 'miss' => t('Miss'), 'ms' =>t('Ms'), 'sir' =>t('Sir'), 'dr' => t('Dr'), 'prof' => t('Prof'));
}
elseif ($form_state['values']['existing_customer'] == 0){
$my_options = array('seconfZ' => t('jimmy'), 'mr' => t('Mr'),);
}
$form['subject'] = array(
'#type' => 'select',
'#title' => t('Subject'),
'#options' => $my_options//$form['subject_options']['#value']
);
return $form['subject'];
}
我以爲我可以做一個開關複選框值或狀態,但沒有喜悅?
你的回調是否實際上被調用?我沒有看到「回調」作爲表單API中的屬性,但我確實看到「#value_callback」 – jprofitt
被調用,您是什麼意思「#value_callback」? – LeBlaireau
您使用的是哪個版本?我通常用這個作爲參考,那是我沒有看到它的地方,所以我不確定你的方法是否被調用,以及它是否應該返回。 http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.html/7#value_callback – jprofitt