L'oggetto radio è l'equivalente del tag html input radio, esso però è implementato tramite l'uso di del tag "img".
La scelta di utilizzare un'immagine deriva dalla possibilità di gestire il layout del controllo.
L'oggetto radio conserva la sua caratteristica di controllo mutuamente esclusivo ossia all'interno della pagina solo uno dei controlli aventi lo stesso nome potrà essere selezionato.

L'oggetto radio ha diverse modalità di funzionamento:

RADIO SENZA DATASOURCE

L'oggetto non è connesso a nessun datasource, la selezione di un oggetto radio escluderà automaticamente tutti quelli con lo stesso nome(attributo name), impostando l'attributo checked=true la radio sarà selezionata.

Esempio Online Anteprima
Descrizione: Utilizzo oggetto radio senza datasource
Sorgente PHP: examples/radio/radio.php
Sorgente XML: examples/radio/radio.xml
<?xml version="1.0" encoding="utf-8"?>
<jamp>
    <page typeobj="page" title="JAMP" icon="../../favicon.ico" loaddata="true">
        <radio1 typeobj="radio" label="Mattino" labelwidth="100px" align="right" value="1" name="flag" checked="true" />
        <radio2 typeobj="radio" label="Pomeriggio" labelwidth="100px" align="right" value="2" name="flag" />
        <radio3 typeobj="radio" label="Sera" labelwidth="100px" align="right" value="3" name="flag" />
    </page>
</jamp>

RADIO CON DATASOURCE

L'oggetto radio può essere connesso 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 radio con datasource
Sorgente PHP: examples/radio/ds_radio.php
Sorgente XML: examples/radio/ds_radio.xml
<?xml version="1.0" encoding="utf-8"?>
<jamp>
    <page typeobj="page" title="JAMP" icon="../../favicon.ico" loaddata="true">
        <ds1 typeobj="ds" conn="conn6" dstable="radio" dskey="id" />
        <dsnav1 typeobj="dsnav" btNew="false" btCancel="false" btDelete="false" dsobj="ds1" />
        <label typeobj="label" dsobj="ds1" dsitem="giorno" label="Giorno" labelwidth="100px" />
        <radio1 typeobj="radio" dsobj="ds1" dsitem="multivalue" label="Mattino" labelwidth="100px" align="right" value="1" name="multivalue" />
        <radio2 typeobj="radio" dsobj="ds1" dsitem="multivalue" label="Pomeriggio" labelwidth="100px" align="right" value="2" name="multivalue" />
        <radio3 typeobj="radio" dsobj="ds1" dsitem="multivalue" label="Sera" labelwidth="100px" align="right" value="3" name="multivalue" />
    </page>
</jamp>

Quando l'oggetto radio è all'interno di una griglia può essere utilizzato:

  • Riga: mutuamente esclusivo all'interno della stessa riga, non specificare l'attributo name
    Esempio Online Anteprima
    Descrizione: Utilizzo oggetto radio in griglia modalità riga
    Sorgente PHP: examples/radio/row_radio.php
    Sorgente XML: examples/radio/row_radio.xml
    <?xml version="1.0" encoding="utf-8"?>
    <jamp>
        <page typeobj="page" title="JAMP" icon="../../favicon.ico" loaddata="true">
            <ds1 typeobj="ds" conn="conn6" dstable="radio" dskey="id" />
            <dsnav1 typeobj="dsnav" btNew="false" btCancel="false" btDelete="false" dsobj="ds1" />        
            <gridds1 typeobj="gridds" dsobj="ds1" width="380" height="320">
                <coloumn>    
                    <col objtype="label" dsitem="id" itemlabel="Cognome" colwidth="80px" />
                    <col objtype="label" dsitem="giorno" itemlabel="Giorno" colwidth="80px" />
                    <col objtype="radio" dsitem="attivo" itemlabel="Attivo" align="center" colwidth="50px" value="1" />
                    <col objtype="radio" dsitem="attivo" itemlabel="Disattivo" align="center" colwidth="50px" value="0" />
                </coloumn>    
            </gridds1>        
        </page>
    </jamp>
  • Colonna: mutuamente esclusivo all'interno della stessa colonna, specificare l'attruibuto name
    Esempio Online Anteprima
    Descrizione: Utilizzo oggetto radio in griglia modalità colonna
    Sorgente PHP: examples/radio/column_radio.php
    Sorgente XML: examples/radio/column_radio.xml
    <?xml version="1.0" encoding="utf-8"?>
    <jamp>
        <page typeobj="page" title="JAMP" icon="../../favicon.ico" loaddata="true">
            <ds1 typeobj="ds" conn="conn6" dstable="radio" dskey="id" dssavetype="table" />
            <dsnav1 typeobj="dsnav" btNew="false" btCancel="false" btDelete="false" dsobj="ds1" />        
            <gridds1 typeobj="gridds" dsobj="ds1" width="350" height="320">
                <coloumn>    
                    <col objtype="label" dsitem="id" itemlabel="Cognome" colwidth="80px" />
                    <col objtype="label" dsitem="giorno" itemlabel="Giorno" colwidth="80px" />                
                    <col objtype="radio" dsitem="attivo" itemlabel="Attivo" align="center" colwidth="50px" name="attivo" />
                </coloumn>    
            </gridds1>        
        </page>
    </jamp>