|
Hi!
I think it's a big problem for controling focus in
cform,because when on-value-changed submit,the focus loss,this will cause
unconvient to user.
so I try several method.
1. handle the xsl in on-value-changed,but the new
page will became default value of the xsl file was.
2. use xsl:param,it works one time,the second time the value
of xsl:param became a fixed value,because in
on-value-changed,the sitemap not performed.
3. use session context , the same to xsl:param
4. try to judge the name of forms_submit_id , the first page
sended, but I can't find it in second page, maybe there're a method to pass it
from server to cliend.
5. add a hidden widget,it works.
A. in form definition file, add a field,put to the first
column for the form.
B. in flowscript, set the init value for the widget to 2 for
init display.
C. in template,assign the widget type to
hidden.
D. add the following code in template or xsl
<script
type="text/_javascript_">
var focusHandler = new Object(); focusHandler.forms_onload = function() { var idx = document.forms['aaaaa'].elements[1].value; document.forms['aaaaa'].elements[idx].focus(); } forms_onloadHandlers.push(focusHandler); </script> E. in on-value-change change the widget's value to a
proper one.
It seemed too complex,I prefer the method 4, but
I don't know how to get the forms_submit_id in the
second page cliend side xsl, maybe others can teach me.
Best Regards
johnson
|
