// de data handler vaststellen
$form -> onCorrect("doRun");
// send the form to a string
$html = $form->flush( true );
?>
Nu plaats ik de $html dus in een template ( $checkout->assign('form', $html); ) en dan werkt het niet. Ik heb het nu opgeloast door zelf het javascript in de template te zetten.
function loadtown( aArgs, sValue ) {
value = GetElement("country").value;
loadexternal(
"loader2.php",
"linkselect=true&filter="+value+"&field=town",
"town",
null,
aArgs,
sValue
)
}
</script>
{form}
<script language="javascript" type="text/javascript">
// load the first item of the dynamic select fields
attachcountry( new Array( ''));
// set the focus on a specific field
var elem = document.getElementById ? document.getElementById('title'): document.all? document.all['title']: false;
if( elem && elem.type != 'hidden') {
try {
elem.focus();
} catch(e) {}
}
</script>
Mijn bovenstaande oplossing geeft helaas nog een probleem. Na het invullen van het form werkt de funtie naa de submit niet goed.
Dit probleem wordt veroorzaakt door de javascript code die ik nu vast in de template heb gezet. Na de submit is de code niet meer nodig omdat het formulier er nu niet is.
@Teye: is er wat te doen aan deze BUG zodat de javascript code gewoon door Formhandler wordt gezet als form geladen is?