Manual:HTMLForm Tutorial 3/de

Any kind of field can be generated by HTMLForm, field-specific options will be described here. Generic options (those any field can be assigned) are described on Tutorial 2.

Introduction
In $formDescriptor, there are two ways to declare a field type:

Class
Zuerst kannst Du das class Attribut setzen (nicht mit cssclass mischen oder verwechseln)


 * HTMLTextField: A simple text field
 * HTMLFloatField: A simple text field with float (number) validation
 * HTMLIntField: A simple text field with integer validation
 * HTMLUserTextField: A simple text field for user names
 * HTMLTextAreaField: An extended text field
 * HTMLSelectField: A dropdown menu
 * HTMLSelectOrOtherField: A dropdown menu with an 'other' option that toggles a simple text field on
 * HTMLSelectAndOtherField: A dropdown menu and a simple text field
 * HTMLMultiSelectField: List of checkboxes
 * HTMLRadioField: Radio buttons
 * HTMLCheckField: Single checkbox
 * HTMLCheckMatrix: 2D matrix of checkboxes
 * HTMLInfoField: Just text, no input
 * HTMLSubmitField: Additional submit button (HTMLForm always adds one by default)
 * HTMLHiddenField: Hidden field (data you need to send, but not shown or edited)
 * HTMLTagFilter: Tags filter
 * HTMLSizeFilterField: File's size filter
 * HTMLUsersMultiselectField: Select Multiple Users
 * HTMLTitleTextField: Textbox to take Page Name
 * HTMLDateTimeField: Date and Time Selector

Typ
Früher haben wir in diesem Tutorial class verwendet, ab nunwerden wir type verwenden. type bildet eine Verknüpfung zu class, class hat jedoch Priorität. Daher solltest Du nicht beide verwenden!


 * text: HTMLTextField
 * password: HTMLTextField
 * textarea: HTMLTextAreaField
 * select: HTMLSelectField
 * radio: HTMLRadioField
 * multiselect: HTMLMultiSelectField
 * check: HTMLCheckField
 * checkmatrix: HTMLCheckMatrix
 * int: HTMLIntField
 * float: HTMLFloatField
 * info: HTMLInfoField
 * selectorother: HTMLSelectOrOtherField
 * selectandother: HTMLSelectAndOtherField
 * submit: HTMLSubmitField
 * hidden: HTMLHiddenField
 * tagfilter: HTMLTagFilter
 * sizefilter: HTMLSizeFilterField
 * user: HTMLUserTextField
 * usersmultiselect: HTMLUsersMultiselectField
 * url: HTMLTextField
 * title: HTMLTitleTextField
 * date: HTMLDateTimeField
 * time: HTMLDateTimeField
 * datetime: HTMLDateTimeField
 * limitselect: HTMLSelectField
 * email: HTMLTextField (supposedly for HTML5 client-side validation, NO SERVER-SIDE VALIDATION HERE!)
 * toggle: HTMLCheckFieldsimilar to check, but through use of  default state can be set to checked
 * edittools: HTMLEditToolsinserts system message, a parsed content of MediaWiki:Edittools

Ziel
The following code builds this form:

text
A simple text field called 'text':

password
A text field displayed like password field called 'password':

float
A text field validated only by floating numbers called 'float':

int
A text field validated only by integers called 'int':

textarea
An extended text field called 'textarea':

select
A drop-down menu called 'select':

selectorother
A dropdown menu with an 'other' option that toggles a simple text field on called 'selectorother':

selectandother
A dropdown menu and a simple text field called 'selectandother':

multiselect
Checkboxes field called 'multiselect':

radio
Radio buttons field called 'radio':

check
A single checkbox field called 'mycheck':

checkmatrix
A 2D matrix of checkboxes called 'checkmatrix':

info
Just raw text string (no input at all) called 'info':

submit
A submit button called 'submit'. By default, there's already one at the end of the form, this is an additional button:

hidden
A hidden text input called 'hidden': You can also use  to accomplish the same goal.

tagfilter


Filter on Tags. See the list of Tags at Special:Tags.

sizefilter


Filter on size. See the example on Special:NewPages.

Benutzer


Textbox which takes locally exist username as input.

usersmultiselect


Select multiple users. See the example in the user preferences.

URL


Textbox which takes a web URL (http:// or https://) as input.

Titel


Autocomplete textbox which takes a title of a wiki page as input.

Datum


Auto date selector which takes date as input.

Zeit


Auto time selector which takes date and time as input.

Termin


Auto date and time selector which takes date and time as input.

Email


Textbox which takes an email address (abc@g.com) as input.

limitselect


A drop-down menu selector for limit.