Disable submit button if none selected using #states The code       

     $form['type'] = array(
      '#type' =&gt; 'select', 
      '#title' =&gt; t('Type of new field'),
      '#options' =&gt; $field_type_options,
      '#empty_option' =&gt; t('- Select a field type -'),
      // '#empty_value' =&gt; 0,
      '#description' =&gt; t('Type of data to store.'),
      '#required' =&gt; TRUE,
    );

    $form['save'] = array (
     '#type' =&gt; 'submit',
     '#value' =&gt; t ('Save field'),
     '#states' =&gt; array(
       'disabled' =&gt; array(
         ':input[name="type"]' =&gt; array('value' =&gt; 0),
         // Tried value = NULL, value = FALSE - no luck
)),


);

The goal is to disable submit button if none selected from drop-down list. Which "value" should I provide? Tried "0", "FALSE", "NULL"
The "#empty_option" will not give a value, which is needed for #states, a workaround is to add the default as an actual option:

$field_type_options = array( 0 =&gt; '- Select a field type -');

$form['type'] = array(
  '#type' =&gt; 'select',
  '#title' =&gt; t('Type of new field'),
  '#options' =&gt; $field_type_options,
  '#description' =&gt; t('Type of data to store.'),
  '#default_value' =&gt; isset( $form_state['values']['type'] ) ?  $form_state['values']['type'] : 0,
  '#required' =&gt; TRUE,
  );

  $form['save'] = array (
   '#type' =&gt; 'submit',
   '#value' =&gt; t ('Save field'),
   '#states' =&gt; array(
     'disabled' =&gt; array(
       ':input[name="type"]' =&gt; array('value' =&gt; 0),
      )
    )
  );


This allows #states to test the value and disable the item