Button
jQuery UI Button
Overview
Button enhances standard form elements like button, input of type submit or reset or anchors to themable buttons with appropiate mouseover and active styles.
In addition to basic push buttons, radio buttons and checkboxes (inputs of type radio and checkbox) can be converted to buttons: Their associated label is styled to appear as the button, while the underlying input is updated on click.
In order to group radio buttons, Button also provides an additional widget-method, called Buttonset. Its used by selecting a container element (which contains the radio buttons) and calling buttonset(). Buttonset will also provide visual grouping, and therefore should be used whenever you have a group of buttons. It works by selecting all descendents and applying button() to them. You can enable and disable a buttonset, which will enable and disable all contained buttons. Destroying a buttonset also calls the button's destroy method.
When using an input of type button, submit or reset, support is limited to plain text labels with no icons.
Dependencies
- UI Core
- UI Widget
Example
$("button").button();
<!DOCTYPE html> <html> <head> <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> <script> $(document).ready(function() { $("button").button(); }); </script> </head> <body style="font-size:62.5%;"> <button>Button label</button> </body> </html>
$("#radio").buttonset();
<!DOCTYPE html> <html> <head> <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> <script> $(document).ready(function() { $("#radio").buttonset(); }); </script> </head> <body style="font-size:62.5%;"> <div id="radio"> <input type="radio" id="radio1" name="radio" /><label for="radio1">Choice 1</label> <input type="radio" id="radio2" name="radio" checked="checked" /><label for="radio2">Choice 2</label> <input type="radio" id="radio3" name="radio" /><label for="radio3">Choice 3</label> </div> </body> </html>
Options
Events
Methods
-
destroy
- Signature:
- .button( "destroy" )
Remove the button functionality completely. This will return the element back to its pre-init state.
-
disable
- Signature:
- .button( "disable" )
Disable the button.
-
enable
- Signature:
- .button( "enable" )
Enable the button.
-
option
- Signature:
- .button( "option" , optionName , [value] )
Get or set any button option. If no value is specified, will act as a getter.
-
option
- Signature:
- .button( "option" , options )
Set multiple button options at once by providing an options object.
-
widget
- Signature:
- .button( "widget" )
Returns the .ui-button element.
-
refresh
- Signature:
- .button( "refresh" )
Refreshes the visual state of the button. Useful for updating button state after the native element's checked or disabled state is changed programatically.
Theming
The jQuery UI Button plugin uses the jQuery UI CSS Framework to style its look and feel, including colors and background textures. We recommend using the ThemeRoller tool to create and download custom themes that are easy to build and maintain.
If a deeper level of customization is needed, there are widget-specific classes referenced within the jquery.ui.button.css stylesheet that can be modified. These classes are highlighed in bold below.
Sample markup with jQuery UI CSS Framework classes
<button class="ui-button ui-button-text-only ui-widget ui-state-default ui-corner-all"><span class="ui-button-text">Button Label</span>
</button>
Note: This is a sample of markup generated by the button plugin, not markup you should use to create a button. The only markup needed for that is <button>Button Label</button>.