PHP
use yh\mdc\components\base\Vars; use yh\mdc\components\TextField; use yh\mdc\components\ItemIconButton; echo TextField::one('Phone') ->setProperty([ 'height' => Vars::NORMAL, 'helper' => 'Required entry phone in the format +7 999 999 99 99', 'required' => true, 'useNativeMessage' => true, 'buttonClear' => true, 'icons' => [ ['icon' => 'phone', 'position' => ItemIconButton::LEADING, 'role' => 'button'] ], 'prefix' => '+7', 'suffix' => '🤡' ]) ->setId('TextField1') ->render(); echo '<br>'; echo TextField::one('TextField outlined') ->setProperty([ 'height' => Vars::NORMAL, 'template' => TextField::OUTLINED, 'helper' => 'Min length 6 symbols', 'minLength' => 6, 'useNativeMessage' => true, 'icons' => [ ['icon' => 'visibility', 'role' => 'button', 'toggle' => 'visibility_off'] ], ]) ->setId('TextField2') ->render(); echo '<br>'; echo TextField::one('TextField label top') ->setProperty([ 'height' => Vars::SMALL, 'template' => TextField::OUTLINED, 'labelTemplate' => TextField::ALIGN_TOP, 'labelSize' => Vars::LARGE, 'buttonClear' => true ]) ->setId('TextField3') ->render(); echo '<br>'; echo TextField::one('TextField label left') ->setProperty([ 'height' => Vars::EXTRA_SMALL, 'labelTemplate' => TextField::ALIGN_LEFT, 'labelSize' => Vars::EXTRA_SMALL, 'buttonClear' => true ]) ->setId('TextField4') ->render();
JavaScript
app.controls.add('textField-60e88af6c261e-phone', 'iconButton', []); app.controls.add('textField-60e88af6c261e-clear', 'iconButton', []); app.controls.add('TextField1', 'textField', { "trailingIcon.clear": true, "required": true, "helperMessage.useNativeMessage": true }); app.controls.add('textField-60e88af6c34e9-visibility', 'iconButton', []); app.controls.add('TextField2', 'textField', { "minLength": 6, "helperMessage.useNativeMessage": true }); app.controls.add('textField-60e88af6c3562-clear', 'iconButton', []); app.controls.add('TextField3', 'textField', { "trailingIcon.clear": true }); app.controls.add('textField-60e88af6c36f3-clear', 'iconButton', []); app.controls.add('TextField4', 'textField', { "trailingIcon.clear": true }); let TextField2 = app.controls.item("TextField2"); TextField2.minLength = 5; TextField2.trailingIcon.click(function () { if (this.parent.type === "text") { this.parent.type = "password"; } else { this.parent.type = "text"; } this.parent.focus(); }, TextField2.trailingIcon);
Samples