![]() |
||
|
aranea.ru || WML - Введение | 11.6.3 Элемент Input
11.6.3 Элемент Input<!ELEMENT input EMPTY> <!ATTLIST input name NMTOKEN #REQUIRED type (text|password) "text" value %vdata; #IMPLIED format CDATA #IMPLIED emptyok %boolean; #IMPLIED size %number; #IMPLIED maxlength %number; #IMPLIED tabindex %number; #IMPLIED title %vdata; #IMPLIED accesskey %vdata; #IMPLIED xml:lang NMTOKEN #IMPLIED %coreattrs; > Элемент input определяет объект ввода текста. Ввод пользователя ограничивается комбинацией факультативных атрибутов format и emptyok. Если маска корректного ввода связана с объектом ввода, то устройство вывода должно обеспечить, что любое значение, собранное объектом ввода, согласуется со связанной маской ввода, когда пользователь пытается предоставить значение. Если ввод не согласуется с вводной маской, то устройство вывода не должно фиксировать такой ввод, и должно уведомить пользователя, что ввод отменен и позволяет пользователю повторно отослать новый ввод. В этом случае переменная, определенная в атрибуте name, не должна модифицировать от оригинального значения. Устройство вывода может проверять каждый символ по отношению вводной маске, когда пользователь его вводит. Все объекты ввода, которые представляют элементы input (и элементы select, если они есть) внутри карт, должны инициализироваться, когда карта выводится, и инициализация должна происходить в порядке, в котором элементы появляются в карте. Инициализация должна осуществляться за два шага:
Если пользователь очищает начальное значение объекта input и пытается передать такой ввода, то это рассматривается как подача пустой строки. Устройство вывода должно принимать предоставление пустой строки только тогда, когда маска ввода позволяет пустую строку. Атрибутыname=nmtoken value=vdata Атрибут name определяет имя переменной для установки результата пользовательского ввода текста. Значение переменной name используется как начальное значение объекта input. Если переменная name содержит значение, которое не согласуется с маской ввода, то устройство вывода должно сбросить переменную и попытаться инициализировать переменную с помощью атрибута value. Атрибут value указывает на значение по умолчанию переменной, названной атрибутом name. Когда элемент выводится на экран, а переменная, названная в атрибуте name не установлена, то переменной name присваивается значение, установленное в атрибуте value. Если переменная name уже содержит значение, то атрибут value игнорируется. Если атрибут value определяет значение, которое не согласуется с маской ввода, определенной в атрибуте format, то устройство вывода должно игнорировать атрибут value. В случае, когда не может быть установлено корректное значение, переменная name остается не установленной, и ввод должен инициализироваться с пустой строкой. type= (text | password)Этот атрибут определяет тип области ввода текста. По умолчанию тип - text. Следующие значения разрешены:
Атрибут format определяет маску ввода для ввода пользователя. Строка состоит из символов управления маски и статического текста, который показывается в области ввода. Устройство вывода может использовать маску формата для облегчения ускоренного ввода данных (например, устройство вывода может менять режим ввода в зависимости от кода форматирования текущей позиции вводного курсора). Маска ввода является корректной только тогда, когда она содержит легальные коды форматирования и статичный текст. Устройства вывода должны игнорировать некорректную маску. Категории символов, как определено в [Unicode]:
Необходимо чтобы устройства вывода были способны выводить на экран и принимать подмножества вышеуказанных множеств, которые приемлемы для всех языков, которые они поддерживают. Однако, все устройства вывода должны поддерживать графические символы ASCII блока Unicode Basic Latin (U+0020 – U+007E). Для данного элемента ввода, устройства вывода могут выбирать ограничение набора, допустимых символов, соответствующих текущему языку(ам). Текущие языки являются супернабором:
В языках без регистров коды формата, различаемого между верхним и нижним регистрами, являются эквивалентными. Символы управления форматом определяют формат данных, ожидаемых для ввода пользователем. Формат по умолчанию является "*M". Коды форматов следующие:
Атрибут emptyok указывает на то, принимает ли этот элемент input пустой вводи или нет. Если emptyok - true, то ввод не требуется, даже если формат маски требует иначе. Если emptyok - false, ввод требуется, даже если маска формата не требует этого. Если автор не определяет явным образом атрибут emptyok, то атрибут format полностью определяет требование ввода. Подразумеваемое значение атрибута emptyok - “true”, когда атрибут формата позволяет пустой ввод (т.е. маска формата подразумевается или код формата “*f”). Иначе, подразумеваемое значение атрибута - “false”. Требуется ли или нет ввод, любой данный ввод должен соответствовать спецификации формата. Для следующих элементов ввода, требуется ввод:<input name=”x” format=”M*M”/> <!-- implied: emptyok=”false” --> <input name=”x” emptyok=”false”/> <!-- implied: format=”*M” --> <input name=”x” emptyok=”false” format=”M*M”/> <input name=”x” emptyok=”false” format=”*M”/> Для следующих элементов ввода, ввод не требуется: <input name=”x”/> <!-- implied: format=”*M” emptyok=”true” --> <input name=”x” format=”*M”/> <!-- implied: emptyok=”true” --> <input name=”x” emptyok=”true”/> <!-- implied: format=”*M” --> <input name=”x” emptyok=”true” format=”M*M”/> <input name=”x” emptyok=”true” format=”*M”/>size=number Этот атрибут определяет ширину в символах области ввода текста. Устройства вывода может игнорировать этот атрибут. maxlength=numberЭтот атрибут определяет максимальное количество символов, которые могут вводиться пользователем в области ввода текста. Значение по умолчанию для этого атрибута – неограниченное число символов. title= vdataЭтот атрибут определяет заголовок для элемента, который может использоваться в презентации этого объекта. Атрибуты, определенные в другом месте
|