# j-Selection

> El componente admite algo así como una lista de casillas de verificación.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: es
Content-SHA256: 721e4a4c5d060bbcdf34d9f8685489b45df961439652d18edab1e3be664c5f32
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

El componente admite algo así como una lista de casillas de verificación.


__Configuración__:

- `remember {Boolean}` recuerda la selección cuando se cambia el `datasource` (predeterminado: `true`)
- `datasource {String}` una ruta a la fuente de datos (predeterminado: vacío)
- `key {String}` un nombre de clave `identifier` para la fuente de datos (predeterminado: `id`)
- `attr {String}` a `data-[attr]` para almacenar `identifier` (predeterminado: `id`)
- `selector {String}` un selector jQuery para elementos (predeterminado: `.selection`)
- `class {String}` clase seleccionada (predeterminado: `selected`)
- `dblclickselectall {Boolean}` habilita la selección inversa después de hacer doble clic (predeterminado: `true`)
- `cancel {String}` una ruta a la variable (si se cambia la variable, entonces se restablece la selección, valor predeterminado: vacío)
- __NUEVO__: `click {String}` un selector para capturar clics (predeterminado: `.selection`)

__Métodos__:

- `component.selectall()` selecciona todos los elementos
- `component.selectnone()` no selecciona ninguno
- `component.selecttoggle()` invierte la selección

Úselo con `<ui-component name="selection">`. Cuando el componente aún no está cargado, jComponent lo descarga en el primer uso desde la dirección en `DEF.fallback` (el CDN Componentator de forma predeterminada). Autor: Peter Širka. Fuente: repositorio de componentes Componentator, licencia MIT.

```html example.html
<style>
	.items > div { height: 28px; line-height: 28px; border-bottom: 1px solid #E0E0E0; }
	.selection { width: 18px; height: 18px; font-size: 11px; border-radius: 3px; border: 1px solid #E0E0E0; text-align: center; float: left; cursor: pointer; margin: 4px 5px 0 0; }
	.selection i { display: none; line-height: 16px; }
	.selection.selected i { display: block; }
</style>

<ui-component name="selection" path="myselection" class="items m">
	<div><span class="selection" data-id="1"><i class="ti ti-check"></i></span>Item 1</div>
	<div><span class="selection" data-id="2"><i class="ti ti-check"></i></span>Item 2</div>
	<div><span class="selection" data-id="3"><i class="ti ti-check"></i></span>Item 3</div>
	<div><span class="selection" data-id="4"><i class="ti ti-check"></i></span>Item 4</div>
	<div><span class="selection" data-id="5"><i class="ti ti-check"></i></span>Item 5</div>
	<div><span class="selection" data-id="6"><i class="ti ti-check"></i></span>Item 6</div>
	<div><span class="selection" data-id="7"><i class="ti ti-check"></i></span>Item 7</div>
	<div><span class="selection" data-id="8"><i class="ti ti-check"></i></span>Item 8</div>
	<div><span class="selection" data-id="9"><i class="ti ti-check"></i></span>Item 9</div>
</ui-component>

<div>Output: <code><ui-bind path="myselection" config="text:JSON.stringify(value)"></ui-bind></code></div>
```
