j-Input
j-Input е многофункционален input компонент, който поддържа много функции и е оптимизиран за ежедневна употреба. j-Textbox и j-DropdownРаботи само с jComponent +v17.
Конфигуриране:
type {String}опция, стойности:- Празна стойност означава дефолт
text email,multilinecheckboxphonepasswordzipdate(необходим компонент наdatepicker)- NEW:
datetime(необходим компонент наdatepicker) time(необходим компонент наtimepicker)color(необходим компонент наcolorpicker)icon(необходим компонент наfaicons)emoji(необходим компонент наemoji)urlnumbernumber2(не е възможно да сеsearchlowerupperslugid- Новата е:
radiobutton - Новата е:
tags - Новата е:
tags-lower - Новата е:
tags-upper - Новата е:
tags-id - Новата е:
tags-email - Новата е:
tags-slug - Новата е:
tags-phone - Новата е:
tags-url
- Празна стойност означава дефолт
required {Boolean}опционално, позволява "необходимо" (дефолт:false)icon {String}опция, икона за етикет напримерhome,cog, и т.н.licon {String}опционален, лев икон напримерhome,cog, и т.н.liconclick {String}опционален, пътят към методаfunction(component, input)ricon {String}опция, дясна икона, напримерhome,cog, и т.н.riconclick {String}опционален, пътят към методаfunction(component, input)label {String}опция, етикет (предварително е HTML съдържание)autofocus {Boolean}е опционален, фокусира се върху входа (предварително:false)align {String}Оптималнатаleftи по подразбиране,2/rightили1/centerafter {String}е опционален, което означава захранване след етикета (дефолт::)autofill {Boolean/String}опционално, позволява функцията за автофил на браузъра (stringще се използва като име за вход, по подразбиране:false)placeholder {String}опционално, добавя текст наplaceholderкъм входаmaxlength {Number}опционално, определяне на максимална дължина на кабелите (предварително:200)minlength {Number}опция, определя минимална дължина на камионитеminvalue {Number}опция, минимална стойност за типnumbermaxvalue {Number}опция, максимална стойност за типnumberincrement {Number}опционално, определя стойност за увеличаване (предварително:1)validate {String}опция, условие за валидиране на стойността, може да съдържа връзка къмfunction(value)или!!value.match(/[a-z]+/)format {String}Опционално, изходни форматиране и т.н.dateТипът е:yyyy-MM-ddЗаtimeТипът е:HH:mmЗаnumberМожете да определите максималните децимали (дефолт:auto)disabled {Boolean}опционално, деактивира този компонентerror {String}опционално, добавя текст наstringпод компонентаautocomplete {String}е опционален, трябва да съдържа връзка към функция, се излъчва наfocusсъбитиеspaces {Boolean}е опционален, позволява пространства в противен случай те се отстраняват (предварително:true)innerlabel {Boolean}опция, позволяваща вътрешна етикета (дефолт:true)dirsource {String}опционален, път към източник на данни или NEW доfunction(search, next)(пътят трябва да съдържа/или NOW:id|name,id|namedircustom {String/Boolean}опция, може да съдържа път къмfunction(val, next(new_val))или може да бъдеBoolean. Тази опция може да позволи добавяне на персонализирана стойност (цена, която не е дефинирана в източника на данни)dirrender {String}опционален, пътят къмfunction(item, text)(може да се върне HTML заj-Directory), тази функция може да повлияе на списъка с елементи вj-Directorydirminwidth {Number}опционално, минимална ширина заj-Directory, по подразбиране:200dirmaxwidth {Number}опция, максимална ширина заj-Directorydiroffsety {Number}опция,Yотстъпка (дефолт:0)diroffsetx {Number}опция,Xотстъпка (дефолт:0)dirplaceholder {String}опция, място заj-Directorydirempty {String}опционално, добавя празно поле заj-Directorydirkey {String}опционално, ключово име за четене наtextвdirsource(предварително:name)dirvalue {String}опционално, ключово име за четене наvalueвdirsource(предварително:id)direxclude {Boolean}опционално, изключва текущата стойност отj-Directory(предварително:true)dirsearch {Boolean|String}опционално, може да деактивира търсенето вj-Directory(предварително:true) или{String}(ключово име) може да има стойност за търсенеdirraw {Boolean}опционално, може да деактивира изтичането на елементи заj-Directory(предварително:false)dirdetail {String}опционално, връзка към функциятаfunction(val, next(NEW_TEXT))(целенасочено заdirsource)dirfilter {String}опционален, инлайн филтър условен метод, например:value.id !== 2(целенасочен заdirsource)- NEW:
dirrawrender {Boolean}опция, акоdirsourceне включва стойност тя ще направи сурова стойност (дефолт:true) mask {String}е опционален, може да съдържа маска във формата на###/##(#се заменя с захар)maskregexp {String}опционално, може да съдържа RegExp за всеки чар във формата на\d,\d,\d,null,\d,\d(,е делимитер)masktidy {Boolean}опционално, компонентът връща само сурови камери без фиксирани камери (дефолт:false)autosource {String}е пътят към източника на търсенеArray(NEW) илиfunction(search, render(arr))за динамично търсенеautovalue {String}е свойствен път за стойността вautosource, по подразбиране:nameautoexec {String}Методът наfunction(item, next(value_to_input))searchalign {Number}Може да се свърже иконаtype:searchДа си тръгнем (2или правилно (1и дефолт)forcevalidation {Boolean}позволява валидиране на сила заphoneиemail(предварително:true)camouflage {Boolean|String}маскира стойността на входа след като се разгърне събитиеblur(предварително:false) или може да бъдеString, което ще се използва като камуфлажmonospace {Boolean}активираmonospacedшрифт (дефолт:false)multiple {Boolean}дава възможност за проверка, акоdirsourceне е празенtabindex {Number}добавя таб индекс (предварително:0)tabs {Boolean}позволява табчета за мултилин (предварително:true)readonly {Boolean}Блокиране на текстовото поле (дефолт:false)transform {String}е връзка къмfunction(value, config)за преобразуване на въведените стойностиmultiline {Boolean}работи само с типradiobuttonseparator {String|Boolean}- разделител за рендерирани стойностиrealtime {Boolean}позволява свързване в реално време (предварително:true)exec {String}е връзка къмfunction(value, element)която ще бъде оценена, ако входът е засегнат
Интересното е:
type:dateизискваdatepickerкомпонентtype:timeизискваtimepickerкомпонентdirsource:path.to.datasourceизискваdirectoryкомпонент- Ако
liconилиriconзапочва с!, тогава компонентът дава сурова стойност вместоicon. - Класа
ui-input-okсе свързва, когато входът е валидиран и попълнен SET('path', 'camouflage', 'show');показва стойността за 2000 ms
https://www.youtube.com/watch?v=Ne3ezaP0w34Използвайте го с <ui-component name="input">Когато компонентът все още не е зареден, jComponent Изтегляне на първия адрес в DEF.fallback (След това Componentator Източник: Питър Шерка Componentator Съставни съставки, лиценз на MIT.
<ui-component name="LAZY directory" config="placeholder:Search..."></ui-component>
<ui-component name="LAZY datepicker"></ui-component>
<ui-component name="LAZY icons"></ui-component>
<div style="width:400px">
<ui-component name="input" path="form.framework" config="placeholder:Choose a framework;dirsource:frameworks" class="m">Framework</ui-component>
<ui-component name="input" path="form.terms" config="type:checkbox" class="m">I agree with terms</ui-component>
<ui-component name="input" path="form.notes" config="type:multiline;innerlabel:1;placeholder:Enter notes" class="m">Notes</ui-component>
<ui-component name="input" path="form.frameworks" config="placeholder:Select frameworks;multiple:true;dirsource:frameworks">Frameworks</ui-component>
<br />
<ui-component name="input" path="form.city" config="required:1;placeholder:Where do you live?;dirsource:cities;dircustom:true">City</ui-component>
<br />
<ui-component name="input" path="cities" config="type:tags;placeholder:Type a tag and press enter">Tags</ui-component>
<br />
<ui-component name="input" path="form.date" config="placeholder:Enter date;type:date;required:true;innerlabel:true">Date</ui-component>
<br />
<ui-component name="input" path="form.search" config="placeholder:Search...;type:search;innerlabel:true">Search</ui-component>
<br />
<ui-component name="input" path="form.password" config="placeholder:Type a password...;type:password">Password</ui-component>
<br />
<ui-component name="input" path="form.zip" config="mask:###-##;maskregexp:\d,\d,\d,null,\d,\d">ZIP</ui-component>
<br />
<ui-component name="input" path="form.email" config="placeholder:example@email.com;type:email">Email</ui-component>
<br />
<ui-component name="input" path="form.phone" config="placeholder:+421;type:phone">Phone</ui-component>
<br />
<ui-component name="input" path="form.radio" config="type:radiobutton;dirsource:Male,Female,Unknown">Gender</ui-component>
<br />
<ui-component name="input" path="form.radio" config="type:radiobutton;dirsource:Male,Female,Unknown;multiline:1">Gender</ui-component>
<br />
<div style="width:150px">
<ui-component name="input" path="form.age" config="type:number;innerlabel:false">Your age</ui-component>
</div>
</div>
<script>
var frameworks = [{ id: 0, name: 'Nothing', template: '<b>{{ name }}</b>' }, { id: 1, name: 'jComponent' }, { id: 2, name: 'Angular.js' }, { id: 3, name: 'React' }];
var cities = ['Slovakia', 'Poland', 'Hungary', 'Germany'];
var form = {};
form.age = 30;
</script>