mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-12 09:28:24 +00:00
64 lines
1.6 KiB
Plaintext
64 lines
1.6 KiB
Plaintext
# Simplified Forms Module
|
|
|
|
form =
|
|
element form {
|
|
form.attlist,
|
|
# Don't use Block.model, because this gets redefined by the
|
|
# legacy module.
|
|
Block.class+
|
|
}
|
|
form.attlist =
|
|
Common.attrib,
|
|
attribute action { URI.datatype },
|
|
attribute method { "get" | "post" }?,
|
|
attribute enctype { ContentType.datatype }?
|
|
label = element label { label.attlist, Inline.model }
|
|
label.attlist =
|
|
Common.attrib,
|
|
attribute for { IDREF.datatype }?,
|
|
attribute accesskey { Character.datatype }?
|
|
input = element input { input.attlist }
|
|
input.attlist =
|
|
Common.attrib,
|
|
attribute type { InputType.class }?,
|
|
attribute name { text }?,
|
|
attribute value { text }?,
|
|
attribute checked { "checked" }?,
|
|
attribute size { text }?,
|
|
attribute maxlength { Number.datatype }?,
|
|
attribute src { URI.datatype }?,
|
|
attribute accesskey { Character.datatype }?
|
|
InputType.class =
|
|
"text"
|
|
| "password"
|
|
| "checkbox"
|
|
| "radio"
|
|
| "submit"
|
|
| "reset"
|
|
| "hidden"
|
|
select = element select { select.attlist, option+ }
|
|
select.attlist =
|
|
Common.attrib,
|
|
attribute name { text }?,
|
|
attribute size { Number.datatype }?,
|
|
attribute multiple { "multiple" }?
|
|
option =
|
|
element option {
|
|
Common.attrib,
|
|
attribute selected { "selected" }?,
|
|
attribute value { text }?,
|
|
text
|
|
}
|
|
textarea = element textarea { textarea.attlist }
|
|
textarea.attlist =
|
|
Common.attrib,
|
|
attribute name { text }?,
|
|
attribute rows { Number.datatype },
|
|
attribute cols { Number.datatype },
|
|
attribute accesskey { Character.datatype }?,
|
|
text
|
|
Form.class = form
|
|
Formctrl.class = input | label | select | textarea
|
|
Block.class |= Form.class
|
|
Inline.class |= Formctrl.class
|