Tableselect with textfields
in the options you can put another field like this:

foreach($xsroads as $xsroad){
  $options[$xsroad['id']] = array(
    'xsr_name' =&gt; $xsroad['xsr_name'],
    'xsr_input' =&gt; array(
      'data' =&gt; array(
        '#type' =&gt; 'textfield',
        '#value =&gt; 'so you wanned a field',
      ),
    ),
  );
}