FormButton

readyNot reviewed for a11y
This page may be removed. Primer plans to move all Rails component documentation to Lookbook.
The FormButton component is part of the Primer ViewComponents forms framework. If you are building a form, please consider using the framework instead of this standalone component.

Description

A button input rendered using the HTML <button type="button"> tag.

This component wraps the Primer button component and supports the same slots and arguments.

Arguments

NameRequiredDescription
name
String

Value for the HTML name attribute.

id
String

Value for the HTML id attribute.

class
String

CSS classes to include in the input's HTML class attribute. Exists for compatibility with Rails form builders.

classes
Array

CSS classes to include in the input's HTML class attribute. Combined with the :class argument. The list may contain strings, hashes, or nil values, and is automatically cleaned up by Primer's class_name helper (nils, falsy entries, and blank strings are ignored).

label
String

Label text displayed above the input.

aria
Hash

Key/value pairs that represent Aria attributes and their values. Eg. aria: { current: true } becomes aria-current="true".

data
Hash

Key/value pairs that represent data attributes and their values. Eg. data: { foo: "bar" } becomes data-foo="bar".

system_arguments
Hash

A hash of attributes passed to the underlying Rails builder methods. These options may mean something special depending on the type of input, otherwise they are emitted as HTML attributes. See the Rails documentation for more information. In addition, the usual Primer utility arguments are accepted in system arguments. For example, passing mt: 2 will add the mt-2 class to the input. See the Primer system arguments docs for details.