j-Input
j-Input je multifunkčný komponent input, ktorý podporuje množstvo funkcií a je optimalizovaný pre každodenné použitie. Je to skvelá alternatíva k j-Textbox a j-Dropdown. Funguje len so jComponent +v17.
Konfigurácia:
type {String}voliteľné, hodnoty:- prázdna hodnota znamená predvolenú hodnotu
text email,multilinecheckboxphonepasswordzipdate(potrebuje komponentdatepicker)- NOVINKA:
datetime(potrebuje komponentdatepicker) time(potrebuje komponenttimepicker)color(potrebuje komponentcolorpicker)icon(potrebuje komponentfaicons)emoji(potrebuje komponentemoji)urlnumbernumber2(nulovateľné)searchlowerupperslugid- NOVINKA:
radiobutton - NOVINKA:
tags - NOVINKA:
tags-lower - NOVINKA:
tags-upper - NOVINKA:
tags-id - NOVINKA:
tags-email - NOVINKA:
tags-slug - NOVINKA:
tags-phone - NOVINKA:
tags-url
- prázdna hodnota znamená predvolenú hodnotu
required {Boolean}voliteľné, umožňuje "povinné" (predvolené:false)icon {String}voliteľné, ikona pre štítok napr.home,cogatď.licon {String}voliteľné, ikona vľavo napr.home,cogatď.liconclick {String}voliteľné, cesta k metódefunction(component, input)ricon {String}voliteľné, pravá ikona napr.home,cogatď.riconclick {String}voliteľné, cesta k metódefunction(component, input)label {String}voliteľné, štítok (predvolený je obsah HTML)autofocus {Boolean}voliteľné, zaostrí vstup (predvolené:false)align {String}voliteľné,left(predvolené),2/rightalebo1/centerafter {String}voliteľné, to znamená znak za štítkom (predvolené::)autofill {Boolean/String}voliteľné, umožňuje funkciu automatického dopĺňania prehliadača (ako názov vstupu sa použijestring, predvolené:false)placeholder {String}voliteľné, do vstupu pridá textplaceholdermaxlength {Number}voliteľné, nastavuje maximálnu dĺžku znakov (predvolené:200)minlength {Number}voliteľné, nastavuje minimálnu dĺžku znakovminvalue {Number}voliteľné, minimálna hodnota pre typnumbermaxvalue {Number}voliteľné, maximálna hodnota pre typnumberincrement {Number}voliteľné, nastavuje hodnotu pre zvýšenie (predvolené:1)validate {String}voliteľné, podmienka pre overenie hodnoty, môže obsahovať prepojenie nafunction(value)alebo!!value.match(/[a-z]+/)format {String}voliteľné, formátovanie výstupu napr. predatetyp:yyyy-MM-dd, pretimetyp:HH:mm, prenumbermôžete definovať max. desatinné miesta (predvolené:auto)disabled {Boolean}voliteľné, deaktivuje tento komponenterror {String}voliteľné, pridá textstringpod komponentautocomplete {String}voliteľné, musí obsahovať prepojenie na funkciu, spúšťa sa pri udalostifocusspaces {Boolean}voliteľné, povolí medzery, inak ich odstráni (predvolené:true)innerlabel {Boolean}voliteľné, umožňuje vnútorný štítok (predvolené:true)dirsource {String}voliteľné, cesta k zdroju údajov alebo NEW ažfunction(search, next)(cesta musí obsahovať/alebo NEW:id|name,id|namedircustom {String/Boolean}voliteľné, môže obsahovať cestu kfunction(val, next(new_val))alebo môže byťBoolean. Táto možnosť môže povoliť pridanie vlastnej hodnoty (hodnota nie je definovaná v zdroji údajov)dirrender {String}voliteľné, cesta kfunction(item, text)(musí vrátiť HTML prej-Directory), táto funkcia môže ovplyvniť zoznam položiek vj-Directorydirminwidth {Number}voliteľné, minimálna šírka prej-Directory, predvolená:200
dirmaxwidth {Number}voliteľné, maximálna šírka prej-Directorydiroffsety {Number}voliteľné, posunY(predvolené:0)diroffsetx {Number}voliteľné, posunX(predvolené:0)dirplaceholder {String}voliteľné, zástupný znak prej-Directorydirempty {String}voliteľné, pridá prázdne pole prej-Directorydirkey {String}voliteľné, názov kľúča na čítanietextvdirsource(predvolené:name)dirvalue {String}voliteľné, názov kľúča na čítanievaluevdirsource(predvolené:id)direxclude {Boolean}voliteľné, vylučuje aktuálnu hodnotu zoj-Directory(predvolené:true)dirsearch {Boolean|String}voliteľné, môže zakázať vyhľadávanie vj-Directory(predvolené:true) alebo{String}(názov kľúča) môže mapovať hodnotu pre vyhľadávaniedirraw {Boolean}voliteľné, môže zakázať escapovanie položiek prej-Directory(predvolené:false)dirdetail {String}voliteľné, prepojenie na funkciufunction(val, next(NEW_TEXT))(cielené nadirsource)dirfilter {String}voliteľné, podmienená metóda vloženého filtra, napríklad:value.id !== 2(zacielené nadirsource)- NEW:
dirrawrender {Boolean}voliteľné, akdirsourcenezahŕňa hodnotu, zobrazí sa nespracovaná hodnota (predvolené:true) mask {String}voliteľné, môže obsahovať masku v tvare###/##(#je nahradené znakom)maskregexp {String}voliteľné, môže obsahovať RegExp pre každý znak v tvare\d,\d,\d,null,\d,\d(,je oddeľovač)masktidy {Boolean}voliteľné, komponent vracia iba nespracované znaky bez pevných znakov (predvolené:false)autosource {String}cesta k zdroju vyhľadávaniaArray(NEW) alebofunction(search, render(arr))pre dynamické vyhľadávanieautovalue {String}cesta vlastnosti pre hodnotu vautosource, predvolená hodnota:nameautoexec {String}a spôsob cestyfunction(item, next(value_to_input))searchalign {Number}môže zarovnať ikonu natype:searchdoľava (2) alebo doprava (1, predvolené)forcevalidation {Boolean}umožňuje overenie sily prephoneaemail(predvolené:true)camouflage {Boolean|String}maskuje hodnotu na vstupe po spustení udalostiblur(predvolené:false) alebo to môže byťString, ktorá bude použitá ako kamuflážmonospace {Boolean}povolí písmomonospaced(predvolené:false)multiple {Boolean}aktivuje začiarkavacie políčka, akdirsourcenie je prázdnetabindex {Number}pridá tabindex (predvolené:0)tabs {Boolean}povoľuje karty pre viacriadkové (predvolené:true)- Vydanie blokového textového poľa
readonly {Boolean}(predvolené:false) transform {String}prepojenie nafunction(value, config)pre transformáciu zadaných hodnôtmultiline {Boolean}funguje len s typomradiobuttonseparator {String|Boolean}oddeľovač pre viacero vykreslených hodnôtrealtime {Boolean}umožňuje viazanie v reálnom čase (predvolené:true)exec {String}prepojenie nafunction(value, element), ktoré sa vyhodnotí, ak bude ovplyvnený vstup
Zaujímavé:
type:datepotrebujedatepickerkomponenttype:timepotrebujetimepickerkomponentdirsource:path.to.datasourcepotrebujedirectorykomponent- ak
liconaleboriconzačína!, potom komponent vykreslí surovú hodnotu namiestoicon - Trieda
ui-input-okje viazaná, keď je vstup validovaný a vyplnený SET('path', 'camouflage', 'show');zobrazuje hodnotu pre 2000 ms
https://www.youtube.com/watch?v=Ne3ezaP0w34Použite ho so <ui-component name="input">. Keď komponent ešte nie je načítaný, jComponent ho stiahne pri prvom použití z adresy v DEF.fallback (predvolene CDN Componentator). Autor: Peter Širka. Zdroj: úložisko komponentov Componentator, licencia 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>