Получение значения виджета

Для получения текущего значения виджета используется метод getValue объекта виджета. Метод возвращает объект класса ZForms.Value или одного из его подклассов. Для получения обычного значения типа String, Number, Array необходимо вызвать метод get класса ZForms.Value. То есть, полная цепочка получения значения выглядит так:

Получение значения виджета (JavaScript)

var mValue = oWidget.getValue().get();

Соответствия между классами виджетов, классами их значений и типами значений приведено в таблице:

класс виджета класс значения виджета тип значения
ZForms.Widget.Text ZForms.Value String
ZForms.Widget.Text.Number ZForms.Value.Number Number
ZForms.Widget.Select ZForms.Value String
ZForms.Widget.Text.Combo ZForms.Value String
ZForms.Widget.Container.Date,
опция bWithTime = false
ZForms.Value.Date String
ZForms.Widget.Container.Date,
опция bWithTime = true
ZForms.Value.Date.Time String
ZForms.Widget.Container.Group.CheckBox ZForms.Value.Multiple Array
ZForms.Widget.Container.Group.RadioButton ZForms.Value String

Пример. После нажатия кнопки «Вывести текущее значение» отображается текущее значение виджета.

Код примера

<form class="zf" id="form-1" action=".">
	<dl>
		<dt><label for="input-last-name-1">Имя</label></dt>
		<dd><input class="zf" type="text" id="input-last-name-1" /></dd>
	</dl>
	<div class="zf-buttons"><input class="zf zf-button" type="button" value="Вывести текущее значение" id="input-button-1" /></div>
</form>
<script type="text/javascript">
//<![CDATA[
ZForms.attachObserver(
	ZForms.EVENT_TYPE_ON_INIT,
	function() {

		var
			oForm = ZForms.getFormById('form-1'),
			oNameWidget = oForm.getWidgetById('input-last-name-1'),
			oButtonWidget = oForm.getWidgetById('input-button-1')
			;

		oButtonWidget.setHandler(
			function() {
			
				alert('Значение виджета: ' + oNameWidget.getValue().get());

			}
			);
	}
	);
//]]>
</script>