2.4.1.5 Button Control

The button control is an unbound control that executes actions, rules, or custom code when clicked. A BUTTON MUST have one of the symbols in the following table.

Symbol

Description

BUTTON_RULES_AND_CUSTOM_CODE

The button executes rules (1) and custom code when clicked.

BUTTON_RULES_AND_CUSTOM_CODE_WITH_CONDITIONAL_FORMATTING

The button executes rules (1) and custom code when clicked, and supports conditional formatting.

BUTTON_RULES_AND_CUSTOM_CODE_WITH_DYNAMIC_DISPLAY_NAME_AND_CONDITIONAL_FORMATTING

The button executes rules (1) and custom code when clicked, renders a dynamic display name, and supports conditional formatting.

BUTTON_UPDATE_FORM_WITH_CONDITIONAL_FORMATTING

The button updates the form content when clicked, and supports conditional formatting.

BUTTON_UPDATE_FORM_WITH_DYNAMIC_DISPLAY_NAME_AND_CONDITIONAL_FORMATTING

The button updates the form (1) content when clicked, renders a dynamic display name, and supports conditional formatting.

BUTTON_ACTION

The button executes actions (submit, query, new, and refresh) when clicked.

BUTTON_ACTION_WITH_CONDITIONAL_FORMATTING

The button executes actions (submit, query, new, and refresh) when clicked, and supports conditional formatting.

BUTTON_ACTION_WITH_DYNAMIC_DISPLAY_NAME_AND_CONDITIONAL_FORMATTING

The button executes actions (submit, query, new, and refresh) when clicked, renders a dynamic display name, and supports conditional formatting.

BUTTON_ACTION_TYPE: MUST be one of the following:

  • submit

  • query

  • new

  • refresh

BUTTON_STYLE: Semicolon-delimited list of (STYLE_SIZE?, STYLE_MARGIN?, STYLE_PADDING?, STYLE_TEXT_DECORATION?, STYLE_BACKGROUND_COLOR?, STYLE_BORDER?, STYLE_FONT?, STYLE_COLOR?, STYLE_VERTICAL_ALIGN?).

BUTTON_ACTION_STYLE: Semicolon-delimited list of (BEHAVIOR: url(#default#ActionButton), BUTTON_STYLE).

BUTTON_CONDITIONAL_FORMATTING_STYLE: Semicolon-delimited list of (STYLE_TEXT_DECORATION?, STYLE_BACKGROUND_COLOR?, STYLE_FONT?, STYLE_COLOR?)

BUTTON_CONDITIONAL_FORMATTING:

 (<xsl:attribute name="style">BUTTON_STYLE?<xsl:choose>
         (<xsl:when test="BOOLEAN_XPATH_EXPRESSION">STYLE_DISPLAY_NONE</xsl:when>|
         <xsl:when test="BOOLEAN_XPATH_EXPRESSION"/>|
         <xsl:when test="BOOLEAN_XPATH_EXPRESSION">BUTTON_CONDITIONAL_FORMATTING_STYLE</xsl:when>)+
     </xsl:choose>
 </xsl:attribute>)?
 (<xsl:choose>
     (<xsl:when test="BOOLEAN_XPATH_EXPRESSION"/>|
     <xsl:when test="BOOLEAN_XPATH_EXPRESSION">
         <xsl:attribute name="disabled">true</xsl:attribute>
     </xsl:when>)+
 </xsl:choose>)?
  
 BUTTON_ACTION_CONDITIONAL_FORMATTING ::=
 (<xsl:attribute name="style">BUTTON_ACTION_STYLE<xsl:choose>
         (<xsl:when test="BOOLEAN_XPATH_EXPRESSION">STYLE_DISPLAY_NONE</xsl:when>|
         <xsl:when test="BOOLEAN_XPATH_EXPRESSION"/>|
         <xsl:when test="BOOLEAN_XPATH_EXPRESSION">BUTTON_CONDITIONAL_FORMATTING_STYLE</xsl:when>)+
     </xsl:choose>
 </xsl:attribute>)?
 (<xsl:choose>
     (<xsl:when test="BOOLEAN_XPATH_EXPRESSION"/>|
     <xsl:when test="BOOLEAN_XPATH_EXPRESSION">
         <xsl:attribute name="disabled">true</xsl:attribute>
     </xsl:when>)+
 </xsl:choose>)?
  
 BUTTON_UPDATE_FORM_CONDITIONAL_FORMATTING ::=
 <xsl:attribute name="style">BUTTON_ACTION_STYLE<xsl:choose>
         <xsl:when test="not(xdEnvironment:IsBrowser())">STYLE_DISPLAY_NONE</xsl:when>
         (<xsl:when test="BOOLEAN_XPATH_EXPRESSION">STYLE_DISPLAY_NONE</xsl:when>|
         <xsl:when test="BOOLEAN_XPATH_EXPRESSION"/>|
         <xsl:when test="BOOLEAN_XPATH_EXPRESSION">BUTTON_CONDITIONAL_FORMATTING_STYLE</xsl:when>)*
     </xsl:choose>
 </xsl:attribute>
 (<xsl:choose>
     <xsl:when test="not(xdEnvironment:IsBrowser())"/>
     (<xsl:when test="BOOLEAN_XPATH_EXPRESSION"/>|
     <xsl:when test="BOOLEAN_XPATH_EXPRESSION">
         <xsl:attribute name="disabled">true</xsl:attribute>
     </xsl:when>)+
 </xsl:choose>)?

BUTTON_RULES_AND_CUSTOM_CODE:

 <input class="langFont" title="ANY_STRING" type="button" (value="NON_EMPTY_STRING")? xd:xctname="Button" xd:CtrlId="CONTROL_ID" (xd:auxDom="AUX_DOM_SOURCE_NAME")? (tabIndex="TAB_INDEX")? (style="BUTTON_STYLE")? (xd:postbackModel="BUTTON_POSTBACKMODEL")? (accessKey="SINGLE_CHARACTER")? (size="SIZE")?/>

BUTTON_RULES_AND_CUSTOM_CODE_WITH_CONDITIONAL_FORMATTING:

 <input class="langFont" title="ANY_STRING" type="button" (value="NON_EMPTY_STRING")? xd:xctname="Button" xd:CtrlId="CONTROL_ID" (xd:auxDom="AUX_DOM_SOURCE_NAME")? (tabIndex="TAB_INDEX")? (style="BUTTON_STYLE")? (xd:postbackModel="BUTTON_POSTBACKMODEL")? (accessKey="SINGLE_CHARACTER")? (size="SIZE")?>
     BUTTON_CONDITIONAL_FORMATTING 
 </input>

BUTTON_RULES_AND_CUSTOM_CODE_WITH_DYNAMIC_DISPLAY_NAME_AND_CONDITIONAL_FORMATTING:

 <input class="langFont" title="ANY_STRING" type="button" xd:xctname="Button" xd:CtrlId="CONTROL_ID" (xd:auxDom="AUX_DOM_SOURCE_NAME")? (tabIndex="TAB_INDEX")? (style="BUTTON_STYLE")? (xd:postbackModel="BUTTON_POSTBACKMODEL")? (accessKey="SINGLE_CHARACTER")? (size="SIZE")?>
     BUTTON_CONDITIONAL_FORMATTING
     CHECK_FOR_GETDOM_BEGIN1
     <xsl:attribute name="value">
         <xsl:value-of select="STRING_XPATH_EXPRESSION"/>
     </xsl:attribute>
     CHECK_FOR_GETDOM_END1
 </input>

BUTTON_UPDATE_FORM_WITH_CONDITIONAL_FORMATTING:

 <input class="langFont" title="ANY_STRING" type="button" value="NON_EMPTY_STRING" xd:xctname="Button" xd:CtrlId="CONTROL_ID" xd:action="updateForm" (xd:auxDom="AUX_DOM_SOURCE_NAME")? (tabIndex="TAB_INDEX")? (style="BUTTON_ACTION_STYLE")? (xd:postbackModel="BUTTON_POSTBACKMODEL")? (accessKey="SINGLE_CHARACTER")? (size="SIZE")?>
     BUTTON_UPDATE_FORM_CONDITIONAL_FORMATTING
 </input>
  
 BUTTON_UPDATE_FORM_WITH_DYNAMIC_DISPLAY_NAME_AND_CONDITIONAL_FORMATTING ::=
 <input class="langFont" title="ANY_STRING" type="button" xd:xctname="Button" xd:CtrlId="CONTROL_ID" xd:action="updateForm" (xd:auxDom="AUX_DOM_SOURCE_NAME")? (tabIndex="TAB_INDEX")? (style="BUTTON_ACTION_STYLE")? (xd:postbackModel="BUTTON_POSTBACKMODEL")? (accessKey="SINGLE_CHARACTER")? (size="SIZE")?>
     BUTTON_UPDATE_FORM_CONDITIONAL_FORMATTING
     CHECK_FOR_GETDOM_BEGIN1
     <xsl:attribute name="value">
         <xsl:value-of select="STRING_XPATH_EXPRESSION"/>
     </xsl:attribute>
     CHECK_FOR_GETDOM_END1
 </input>

BUTTON_ACTION:

 <input class="langFont" title="ANY_STRING" style="BUTTON_ACTION_STYLE" type="button" (value="NON_EMPTY_STRING")? xd:xctname="Button" xd:CtrlId="CONTROL_ID" (xd:action="BUTTON_ACTION_TYPE")? (xd:auxDom="AUX_DOM_SOURCE_NAME")? (tabIndex="TAB_INDEX")? (xd:postbackModel="BUTTON_POSTBACKMODEL")? (accessKey="SINGLE_CHARACTER")? (size="SIZE")?/>

BUTTON_ACTION_WITH_CONDITIONAL_FORMATTING:

 <input class="langFont" title="ANY_STRING" type="button" (value="NON_EMPTY_STRING")? xd:xctname="Button" xd:CtrlId="CONTROL_ID" (xd:action="BUTTON_ACTION_TYPE")? (xd:auxDom="AUX_DOM_SOURCE_NAME")? (tabIndex="TAB_INDEX")? (style="BUTTON_ACTION_STYLE")? (xd:postbackModel="BUTTON_POSTBACKMODEL")? (accessKey="SINGLE_CHARACTER")? (size="SIZE")?>
     BUTTON_ACTION_CONDITIONAL_FORMATTING 
 </input>

BUTTON_ACTION_WITH_DYNAMIC_DISPLAY_NAME_AND_CONDITIONAL_FORMATTING:

 <input class="langFont" title="ANY_STRING" type="button" xd:xctname="Button" xd:CtrlId="CONTROL_ID" xd:action="BUTTON_ACTION_TYPE" (xd:auxDom="AUX_DOM_SOURCE_NAME")? (tabIndex="TAB_INDEX")? (style="BUTTON_ACTION_STYLE")? (xd:postbackModel="BUTTON_POSTBACKMODEL")? (accessKey="SINGLE_CHARACTER")? (size="SIZE")?>
     BUTTON_ACTION_CONDITIONAL_FORMATTING 
     CHECK_FOR_GETDOM_BEGIN1
     <xsl:attribute name="value">
         <xsl:value-of select="STRING_XPATH_EXPRESSION"/>
     </xsl:attribute>
     CHECK_FOR_GETDOM_END1
 </input>

Following are the control-specific attributes used by the button control:

The xdEnvironment:IsBrowser XSL function extension, as specified in section 2.4.3.3.1, is used by the button control.