Child pages
  • Writing a foldable section controlled by a checkbox

Due to some maintenance issues, this service has been switched in read-only mode, you can find more information about the why

and how to migrate your plugin documentation in this blogpost

Skip to end of metadata
Go to start of metadata

Taken from:
http://hudson.361315.n4.nabble.com/How-do-I-show-other-configuration-entries-only-if-the-user-have-checked-a-checkbox-in-config-jelly-td388471.html

I have a text field that I only want to show in the configuration page
if a check box is checked and I wonder how to do it. It should have
the samve functionality as the list of builders/publishers in the job
configuration page have, ie a publisher will only show its config
entries if the check box is checked.
I've found the <optionalBlock> and it seems the job configuration
jeylly pages is using it, but I havent got it right yet. Does anyone
have any idea?

<f:optionalBlock name="clearcase.dynamicview" title="aaa" checked="false">
          <f:textbox name="clearcase.viewdrive" value="${scm.viewDrive}" optional="true"/>
</f:optionalBlock>

Regards
//Erik

------

The following code is based on ClearCaseSCM/config.jelly and shows you
how to add foldable section.

You can use <f:nested> instead of <f:block> and they give you different
indentation.

<j:jelly xmlns:j="jelly:core"
         xmlns:st="jelly:stapler"
         xmlns:d="jelly:define"
         xmlns:l="/lib/layout"
         xmlns:t="/lib/hudson"
         xmlns:f="/lib/form">

  <f:entry title="Config spec" help="/plugin/clearcase/configspec.html">
    <textarea
              name="clearcase.configspec"
              rows="8"
              style="width:100%"
              checkUrl="'${rootURL}/scm/ClearCaseSCM/configSpecCheck?value='+escape(this.value)">
      ${scm.configSpec}
    </textarea>
  </f:entry>

  <f:entry title="View name" help="/plugin/clearcase/localdir.html">
    <f:textbox name="clearcase.viewname"
               value="${scm.ViewName}"
               checkUrl="'${rootURL}/scm/ClearCaseSCM/viewNameCheck?value='+escape(this.value)"/>
  </f:entry>

  <f:entry title="Use update">
    <f:checkbox name="clearcase.useupdate"
                checked="${h.defaultToTrue(scm.useUpdate)}"/>
    If checked, Hudson will use 'cleartool update' whenever possible, making the
    build faster. But this causes the artifacts from the previous build to remain
    when a new build starts.
  </f:entry>

  <f:entry title="Branch" help="/plugin/clearcase/branch.html">
    <f:textbox name="clearcase.branch" value="${scm.branch}"/>
  </f:entry>

  <f:block>
    <table>
      <f:optionalBlock name="business" title="Book business class flight">
        <f:entry title="Airline code">
          <f:textbox name="code"
                     value="${scm.branch}"/>
        </f:entry>
      </f:optionalBlock>
    </table>
  </f:block>
 
</j:jelly>


Kohsuke Kawaguchi

See also Jelly form controls

  • No labels