Taxonomy terms with conditional field
With a module, creating a form and using the drupal ajax function to switch the input field on/off might be a solution.

check out this example from deckfifty: form api using ajax example

partial code:

function deckfifty_example_form($form, &amp;$form_state) {
  $form['fox_color'] = array(
    '#title' =&gt; t('Specify the color of the fox:'),
    '#type' =&gt; 'select',
    '#options' =&gt; drupal_map_assoc(array('', 'brown', 'black', 'white')),
    '#ajax' =&gt; array(
     'callback' =&gt; 'deckfifty_fox_ajax_callback',
     'wrapper' =&gt; 'deckfifty_fox_ajax_wrapper',
   ),
 );
 $form['fox_wrapper'] = array(
    '#type' =&gt; 'markup',
     '#prefix' =&gt; '&lt;div id="deckfifty_fox_ajax_wrapper"&gt;',
    '#suffix' =&gt; '&lt;/div&gt;',
 );

 $form['submit'] = array(
   '#type' =&gt; 'submit',
   '#value' =&gt; t('Save'),
);

 return $form;
}