L'oggetto checkbox è l'equivalente del tag html input checkbox, esso però è implementato tramite l'uso del tag "img".
La scelta di utilizzare un'immagine deriva da due fattori:

  • Permettere di differenziare il layout del controllo
  • Gestire il tristate: per assegnare il valore ai singoli stati utilizzare gli attributi: [list]
  • check: valore assegnato alla checkbox selezionata, se non utilizzato verrà assegnato il valore 1
  • uncheck: valore assegnato alla checkbox non selezionata, se non utilizzato verrà assegnato il valore 0
  • tristate(opzionale): valore assegnare allo stato indeterminato(la checkbox in grigio)

CHECKBOX SENZA DATASOURCE

La checkbox non è connessa a nessun datasource, il suo valore iniziale viene specificato tramite all'attributo value:

Esempio Online Anteprima
Descrizione: Utilizzo oggetto checkbox senza datasource
Sorgente PHP: examples/checkbox/checkbox.php
Sorgente XML: examples/checkbox/checkbox.xml
<?xml version="1.0" encoding="utf-8"?>
<jamp>
    <page typeobj="page" title="JPresenze" icon="../../favicon.ico" loaddata="true">
        <checkbox1 typeobj="checkbox" label="Mattino(true)" labelwidth="150px" labelalign="left" value="2" tristate="0" uncheck="1" check="2" />
        <checkbox2 typeobj="checkbox" label="Pomeriggio(false)" labelwidth="150px" labelalign="left" value="1" tristate="0" uncheck="1" check="2" />
        <checkbox3 typeobj="checkbox" label="Sera(tristate)" labelwidth="150px" labelalign="left" value="0" tristate="0" uncheck="1" check="2" />
    </page>
</jamp>

CHECKBOX CON DATASOURCE


La checkbox può essere connessa ad una sorgente di dati, gli attributi in gioco sono:

  • dsobj: attributo contenente il nome del ds da cui prelevare i dati
  • dsitem: attributo contenente il nome del campo da cui prelevare i dati da visualizzare
Esempio Online Anteprima
Descrizione: Utilizzo oggetto checkbox con datasource
Sorgente PHP: examples/checkbox/ds_checkbox.php
Sorgente XML: examples/checkbox/ds_checkbox.xml
<?xml version="1.0" encoding="utf-8"?>
<jamp>
    <page typeobj="page" title="JPresenze" icon="../../favicon.ico" loaddata="true">
        <ds1 typeobj="ds" conn="conn6" dstable="checkbox" dskey="id" />
        <dsnav1 typeobj="dsnav" btNew="false" btCancel="false" btDelete="false" dsobj="ds1" />
        <label typeobj="label" dsobj="ds1" dsitem="giorno" label="Giorno\n" />
        <checkbox1 typeobj="checkbox" dsobj="ds1" dsitem="mattino" label="Mattino" labelwidth="100px" labelalign="right" tristate="0" uncheck="1" check="2" />
        <checkbox2 typeobj="checkbox" dsobj="ds1" dsitem="pomeriggio" label="Pomeriggio" labelwidth="100px" labelalign="right" tristate="0" uncheck="1" check="2" />
        <checkbox3 typeobj="checkbox" dsobj="ds1" dsitem="sera" label="Sera" labelwidth="100px" labelalign="right" tristate="0" uncheck="1" check="2" />
    </page>
</jamp>

La checkbox può essere anche contenuta all'interno di una griglia:

Esempio Online Anteprima
Descrizione: Utilizzo oggetto checkbox in una griglia
Sorgente PHP: examples/checkbox/row_checkbox.php
Sorgente XML: examples/checkbox/row_checkbox.xml
<?xml version="1.0" encoding="utf-8"?>
<jamp>
    <page typeobj="page" title="JPresenze" icon="../../favicon.ico" loaddata="true">
        <ds1 typeobj="ds" conn="conn6" dstable="checkbox" dskey="id" />
        <dsnav1 typeobj="dsnav" btNew="false" btCancel="false" btDelete="false" dsobj="ds1" />        
        <gridds1 typeobj="gridds" dsobj="ds1" width="550" height="320">
            <coloumn>    
                <col objtype="label" dsitem="giorno" itemlabel="Giorno" colwidth="80px" />                
                <col objtype="checkbox" dsitem="mattino" itemlabel="Mattino" align="center" colwidth="80px" />
                <col objtype="checkbox" dsitem="pomeriggio" itemlabel="Pomeriggio" align="center" colwidth="80px"/>
                <col objtype="checkbox" dsitem="sera" itemlabel="Sera" align="center" colwidth="80px"/>
            </coloumn>    
        </gridds1>        
    </page>
</jamp>