j-Edit
Le composant active l'attribut contenteditable pour les éléments avec les classes edit ou edit2.
- singleton
- placez le composant sous l'élément
<bodycommej-Directoryouj-DatePicker
Bon à savoir :
- chaque élément de la classe
editest modifiable en un seul clic - chaque élément de la classe
edit2est éditable en double clic
Configuration :
dateformat {String}un format par défaut pour l'analyse des dates (par défaut :yyyy-MM-dd)exec {String}facultatif, un chemin par défaut versfunction(opt, accept(boolean/html_value_for_the_element))floating {Boolean}en option, peut activer le flottement par défaut (par défaut :false)minwidth {Number}en option, une largeur minimaleoffsetX {Number}en option, déport XoffsetY {Number}en option, décalage Y
L'attribut data-edit prend en charge :
required {Boolean}en option, active "obligatoire" (par défaut :false)type {String}en option, peut êtrestring(par défaut),date,number,boolean,email,urlouhtmlcheck {String}facultatif, un chemin versfunction(opt, el)doit renvoyerboolean, cela signifieCan the user edit that field?exec {String}en option, un chemin versfunction(opt, accept(boolean/html_value_for_the_element))format {String}en option, un format pourdate, par défaut :yyyy-MM-ddmaxlength {Number}une longueur maximaleminvalue {Number}une minute. valeur pour le type de numéro (par défaut :undefined)maxvalue {Number}un maximum. valeur pour le type de numéro (par défaut :undefined)bind {Boolean}sitruereliedata-bindsur cet élément uniquement (par défaut :true)multiline {Boolean}en option, active le multiligne + ajoute la classeeditable-multiline(inline-block+width:100%) lors de l'édition (par défaut :false)floating {Boolean/String}en option, active la fenêtre flottante pour l'élément (par défaut :false,stringpeut contenir des valeurspositionouoffset)offsetX {Number}en option, décalage X supplémentaire pour la fenêtre flottanteoffsetY {Number}en option, décalage Y supplémentaire pour la fenêtre flottanteoffsetWidth {Number}en option, largeur supplémentaire pour la fenêtre flottantewidth {Number}en option, une largeur fixe pour panneau flottantparent {String}en option, un sélecteur pour l'obtention du offset (peut contenirparentou un sélecteur jQuery pour la méthode.closest())selectall {Boolean}en option, sélectionne tout le textecursor {String}en option, une position du curseurbegouend(par défaut)notify {String}facultatif, un chemin versfunction(opt)qui sera notifié après une modification réussieprevent {Boolean}facultatif, exécute.preventDefault()et.stopPropagation()en cas de clicalign {String}facultatif, définit une valeur pour la propriété text-align pour le mode flottant uniquementfocus {String}en option, un lien vers lefunction(opt, el)lorsqu'il est focaliséblur {String}en option, un lien vers lefunction(opt, el)lorsqu'il est flou- NEW :
attr {String}facultatif, un nomdata-{attr}pour récupérer la valeur non formatée
Bon à savoir :
opt.set(value)peut être utilisé pour attribuer une valeur
Utilisez-le avec <ui-component name="edit">. Lorsque le composant n'est pas encore chargé, jComponent le télécharge lors de la première utilisation depuis l'adresse dans DEF.fallback (le CDN Componentator par défaut). Auteur : Peter Širka. Source : le référentiel de composants Componentator, licence MIT.
<ui-component name="edit"></ui-component>
<ui-plugin path="form" style="width:500px;padding:10px;border:1px solid #E0E0E0">
<div class="row m">
<div class="col-xs-3">
Name:
</div>
<div class="col-xs-9">
<ui-bind class="edit2 block" data-edit="required:1;floating:1" path="?.name" config="html" style="height:24px;background-color:#E0E0E0"></ui-bind>
</div>
</div>
<div class="row m">
<div class="col-xs-3">
Email:
</div>
<div class="col-xs-9">
<div class="edit" data-edit="required:1;type:email;exec:save_email" style="height:24px;background-color:#E0E0E0">@</div>
</div>
</div>
<div class="row m">
<div class="col-xs-3">
HTML:
</div>
<div class="col-xs-9">
<ui-bind class="edit block" data-edit="multiline:1;floating:1;type:html" path="form.html" config="html" style="min-height:24px;background-color:#E0E0E0"></ui-bind>
</div>
</div>
<pre><ui-bind path="?" config="html:JSON.stringify(value, null, ' ')"></ui-bind></pre>
</ui-plugin>
<script>
function save_email(opt, next) {
SET('form.email', opt.value);
// next(true);
// next(false) OR next(null) cancels the change
next(opt.value.toUpperCase());
}
var form = {};
form.html = '<b>Hello world!</b>';
form.name = 'UI components';
</script>