The gform_submit_button Gravity Forms filter is used to modify the form’s submit button tag when the form is displayed.
Usage
To apply your function to all forms:
add_filter('gform_submit_button', 'your_function_name', 10, 2);
To target a specific form, append the form id to the hook name (format: gform_submit_button_FORMID):
add_filter('gform_submit_button_5', 'your_function_name', 10, 2);
Parameters
$button_input
(string): The string containing the<input>
tag to be filtered.$form
(Form Object): The form currently being processed.
More information
See Gravity Forms Docs: gform_submit_button
Examples
Change input to button
Change the default input type to use the button element with an included span, which is popular for implementing the Sliding Door CSS technique.
add_filter('gform_submit_button', 'form_submit_button', 10, 2); function form_submit_button($button, $form) { return "<button class='button gform_button' id='gform_submit_button_{$form['id']}'><span>Submit</span></button>"; }
Add text after the button
Add content after the submit button.
add_filter('gform_submit_button_36', 'add_paragraph_below_submit', 10, 2); function add_paragraph_below_submit($button, $form) { return $button .= "<p>your <a href='http://yourlink.com'>text</a> goes here</p>"; }
Remove the button
Remove the submit button for a specific form.
add_filter('gform_submit_button_10', '__return_empty_string');
Append a JavaScript action to the button
Add an onclick action to the submit button.
add_filter('gform_submit_button', 'add_onclick', 10, 2); function add_onclick($button, $form) { $dom = new DOMDocument(); $dom->loadHTML('<?xml encoding="utf-8" ?>' . $button); $input = $dom->getElementsByTagName('input')->item(0); $onclick = $input->getAttribute('onclick'); $onclick .= "addAdditionalAction('Additional Action');"; $input->setAttribute('onclick', $onclick); return $dom->saveHtml($input); }
Append custom CSS classes to the button
Add two custom CSS classes to the submit button.
add_filter('gform_submit_button', 'add_custom_css_classes', 10, 2); function add_custom_css_classes($button, $form) { $dom = new DOMDocument(); $dom->loadHTML('<?xml encoding="utf-8" ?>' . $button); $input = $dom->getElementsByTagName('input')->item(0); $classes = $input->getAttribute('class'); $classes .= " my-custom-class another-one"; $input->setAttribute('class', $classes); return $dom->saveHtml($input); }