---
name: "Jifty::Web::Form"
section: "3pm"
platform: "linux"
package: "libjifty-perl"
version: "1.10518+dfsg-2"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/Jifty::Web::Form"
---

# Jifty::Web::Form(3pm)

Tools for rendering and dealing with HTML forms

## NAME

Jifty::Web::Form - Tools for rendering and dealing with HTML forms

## METHODS

### new ARGS

Creates a new Jifty::Web::Form.  Arguments:

- id

  The HTML id attribute given to the form.  This is aliased to name.  That is, name and id are always equal and changing one changes the other.

- class

  The HTML class attribute given to the form.

- name

  The name given to the form.  This is mostly for naming specific forms for testing.

- call

  All buttons in this form will act as continuation calls for the given continuation id.

- disable\_autocomplete

  Disable **browser** autocomplete for this form.  Jifty autocomplete will still work.

### PRIVATE \_init

Reinitialize this form.

- name

  The form name

- call

  The continuation id to call

### actions

Returns a reference to a hash of Jifty::Action objects in this form keyed by moniker.

If you want to add actions to this form, use "add\_action"

### name \[VALUE\]

Gets or sets the HTML name given to the form element.

### call \[CONTID\]

Gets or sets the continuation ID that will be called for this form.

### is\_open \[BOOL\]

This accessor returns true if Jifty is currently in the middle of rendering a form (if it's printed a \<form\> but not yet printed a \</form\> tag.) Use this in your components to decide whether to open a form or not if you might be called from a template that opened the form for you.

### add\_action PARAMHASH

Calls "new\_action" in Jifty::Web with the paramhash given, and adds it to the form.

### register\_action ACTION

Adds `"ACTION"` as an action for this form. Called so that actions' form fields can register the action against the form they're being used in.

### has\_action MONIKER

If this form has an action whose moniker is `"MONIKER"`, returns it. Otherwise returns undef.

### start

Renders the opening form tag.

### submit MESSAGE, \[PARAMETERS\]

Renders a submit button with the text MESSAGE on it (which will be HTML escaped).  Returns the empty string (for ease of use in interpolation).  Any extra PARAMETERS are passed to Jifty::Web::Form::Field::Clickable's constructor.

### return MESSAGE, \[PARAMETERS\]

Renders a return button with the text MESSAGE on it (which will be HTML escaped).  Returns the empty string (for ease of use in interpolation).  Any extra PARAMETERS are passed to Jifty::Web::Form::Field::Button's constructor.

### end

Renders the closing form tag (including rendering errors for and registering all of the actions)  After doing this, it resets its internal state such that "start" may be called again.

### print\_action\_registration MONIKER

Print out the action registration goo for this action \_right now\_, unless we've already done so.

### next\_page PARAMHASH

Set the page this form should go to on success.  This simply creates a Jifty::Action::Redirect action; any parameters in the `"PARAMHASH"` are passed as arguments to the Jifty::Action::Redirect action.

Returns an empty string so it can be included in forms

### DESTROY

Checks to ensure that forms that were opened were actually closed, which is when actions are registered.
