#FUNCTION is only for validating posted values...
Supposing the output of the TV is a delimited list you could use a function similar to this in the eFormOnBeforeFormParse event:
<?php
function onBeforeParseFunction( &$fields, &$templates){
global $modx;
$replaceVar = '';
//retrieve TV values into an array
$list = explode(',',$modx->getTemplateVarOutput('yourTVname'));
foreach($list as $name){
$replaceVar .= '<option value="'.$name.'">'.$name.'<option>';
}
//replace placeholder in form template
$templates['tpl'] = str_replace('[+optionPlaceHolder+]',$replaceVar,$templates['tpl']);
//exit event
return true
}
?>
Your form template would have to contain something like this:
<form action="[~[(id)]~]" id="myForm" name="myForm" method="post">
<select id="selectField" eform="Select Box::1::">
<option value="" selected="selected"></option>
[+optionPlaceHolder+]
</select>
<!-- Rest of form -->
</form>
See the eForm documentation and examples for calling events...