# j-Selection

> Die Komponente unterstützt so etwas wie eine Kontrollkästchenliste.

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

Die Komponente unterstützt so etwas wie eine Kontrollkästchenliste.


__Konfiguration__:

- `remember {Boolean}` merkt sich die Auswahl, wenn `datasource` geändert wird (Standard: `true`)
- `datasource {String}` ein Pfad zur Datenquelle (Standard: leer)
- `key {String}` ein `identifier`-Schlüsselname für die Datenquelle (Standard: `id`)
- `attr {String}` a `data-[attr]` zum Speichern von `identifier` (Standard: `id`)
- `selector {String}` ein jQuery-Selektor für Elemente (Standard: `.selection`)
- `class {String}` ausgewählte Klasse (Standard: `selected`)
- `dblclickselectall {Boolean}` ermöglicht die umgekehrte Auswahl nach einem Doppelklick (Standard: `true`)
- `cancel {String}` ein Pfad zur Variablen (bei Änderung der Variable wird die Auswahl zurückgesetzt, Standard: leer)
- __NEU__: `click {String}` ein Selektor zum Erfassen von Klicks (Standard: `.selection`)

__Methoden__:

- `component.selectall()` wählt alle Elemente aus
- `component.selectnone()` wählt keine aus
- `component.selecttoggle()` kehrt die Auswahl um

Verwenden Sie es mit `<ui-component name="selection">`. Wenn die Komponente noch nicht geladen ist, lädt jComponent sie bei der ersten Verwendung von der Adresse in `DEF.fallback` herunter (standardmäßig das CDN Componentator). Autor: Peter Širka. Quelle: Componentator-Komponenten-Repository, MIT-Lizenz.

```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>
```
