Here's how I've done that:

<fd:booleanfield id="useDefaultPort">
        <fd:label>Use default FTP Port (Leave checked if you are not sure)</fd:label>
        <fd:initial-value>true</fd:initial-value>
        <fd:on-value-changed>
            <_javascript_>
                <![CDATA[
                var parent = event.source.parent;
                var useDefaultPort = parent.lookupWidget("useDefaultPort").getValue();
                                   
                if(useDefaultPort == "false") {
                    parent.lookupWidget("remotePort").setState(WidgetState.ACTIVE);
                } else {
                    parent.lookupWidget("remotePort").setState(WidgetState.INVISIBLE);
                    parent.lookupWidget("remotePort").setValue(new java.lang.Integer(21));
                }
            ]]>
            </_javascript_>
        </fd:on-value-changed>
    </fd:booleanfield>
    <fd:field id="remotePort" required="true" state="invisible">
        <fd:datatype base="integer"/>
        <fd:label>Remote FTP Port</fd:label>
        <fd:validation>
            <fd:range min="1" max="65535">
                <fd:failmessage>Remote FTP Port must be a number between 1 and 65535</fd:failmessage>
            </fd:range>
        </fd:validation>
    </fd:field>

The only difference being I my boolean field needs to be false to show the field.

HTH

On 1/20/06, Gary Larsen <[EMAIL PROTECTED]> wrote:
Hi,

I'm stuck on something simple again.

I want to hide a button widget if the value of a boolean field is false on
form load. I'm trying using <fd:on-create>:

  <fd:form>
    <fd:on-create>
      <fd:_javascript_>
        var widgetStateInvisible =
org.apache.cocoon.forms.formmodel.WidgetState.INVISIBLE;
        var thisForm = event.source.form;

        if (!thisForm .lookupWidget("okToSync").getValue) {
            thisForm.lookupWidget("submitButton").state =
widgetStateInvisible;
        }
     </fd:_javascript_>
   </fd:on-create>

It appears that I'm able to get a reference to the "okToSync" wigdet (it's
not null) but the value is null, I'm assuming because it is not loaded yet.

Thanks for any help,
Gary


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]