Для установки значения виджета используется метод setValue объекта виджета.
oWidget.setValue(
ZForms.Value oValue
);Где oValue — объект нового значения виджета, класс которого зависит от класса виджета. Список соответствий классов виджетов и классов их значений приведен в разделе «Получение значения виджета».
Для простоты использования каждый виджет имеет метод createValue, возвращающий новый объект значения, который соответствует классу виджета.
var oValue = oWidget.createValue(
mixed mValue
);Где mValue — это параметр, содержащий значение обычного типа (String, Number, Array).
Таким образом, код для установки значения виджета выглядит следующим образом:
oWidget.setValue(oWidget.createValue(mValue));<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" id="button-1" value="Скопировать текущее значение" /></div>
<dl>
<dt><label for="input-last-name-copy-1">Копия</label></dt>
<dd><input class="zf" type="text" id="input-last-name-copy-1" /></dd>
</dl>
</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('button-1'),
oCopyWidget = oForm.getWidgetById('input-last-name-copy-1')
;
oButtonWidget.setHandler(
function() {
oCopyWidget.setValue(oCopyWidget.createValue(oNameWidget.getValue().get()));
}
);
}
);
//]]>
</script>