Nome Attributo | Tipo | Obbligatorio | Default | Descrizione |
---|---|---|---|---|
name | stringa | no | checkbox | nome della lista di checkbox |
values | array | sì, a meno che si usi l'attributo options | nessuno | array di valori per le checkbox |
output | array | sì, a meno che si usi l'attributo options | nessuno | array di output per le checkbox |
selected | stringa/array | no | vuoto | la/le checkbox preselezionata/e |
options | array associativo | sì, a meno che si usino values e output | nessuno | array associativo di valori e output |
separator | stringa | no | vuoto | stringa di testo da usare come separatore fra le checkbox |
labels | booleano | no | true | aggiunge i tag <label> all'output |
html_checkboxes è una funzione utente che usa i dati forniti per creare un gruppo di checkbox html. Si occupa anche di impostare la casella selezionata per default. Gli attributi obbligatori sono values e output, a meno che non usiate invece options. Tutto l'output generato è compatibile XHTML.
Tutti i parametri non compresi nella lista qui sopra vengono stampati come coppie nome/valore all'interno di ogni tag <input>.
Example 8.6. html_checkboxes
<?php require('Smarty.class.php'); $smarty = new Smarty; $smarty->assign('cust_ids', array(1000,1001,1002,1003)); $smarty->assign('cust_names', array('Joe Schmoe','Jack Smith','Jane Johnson','Charlie Brown')); $smarty->assign('customer_id', 1001); $smarty->display('index.tpl'); ?>
dove index.tpl è:
{html_checkboxes name="id" values=$cust_ids selected=$customer_id output=$cust_names separator="<br />"}
<?php require('Smarty.class.php'); $smarty = new Smarty; $smarty->assign('cust_checkboxes', array( 1000 => 'Joe Schmoe', 1001 => 'Jack Smith', 1002 => 'Jane Johnson', 1003 => 'Charlie Brown')); $smarty->assign('customer_id', 1001); $smarty->display('index.tpl'); ?>
dove index.tpl è:
{html_checkboxes name="id" options=$cust_checkboxes selected=$customer_id separator="<br />"}
entrambi gli esempi produrranno in output:
<label><input type="checkbox" name="id[]" value="1000" />Joe Schmoe</label><br /> <label><input type="checkbox" name="id[]" value="1001" checked="checked" />Jack Smith</label><br /> <label><input type="checkbox" name="id[]" value="1002" />Jane Johnson</label><br /> <label><input type="checkbox" name="id[]" value="1003" />Charlie Brown</label><br />