HTML_QuickForm_advmultiselect::getElementCss

HTML_QuickForm_advmultiselect::getElementCss() – Obtenir la feuille de style pour le rendu d'un élément simple liste

Synopsis

require_once 'HTML/QuickForm/advmultiselect.php';

string HTML_QuickForm_advmultiselect::getElementCss ( boolean $raw = TRUE )

Description

Si votre navigateur ne supporte pas javascript, ou si pour une raison quelconque vous avez choisi de le désactiver, alors la seule solution est d'utiliser la forme liste unique avec cases à cocher.

Vous pouvez obtenir un rendu plus ou moins acceptable avec les seules valeurs par défaut, mais avec le niveau de configuration élévé, vous pouvez obtenir presque tout ce que vous voulez.

La présentation par défaut est appliquée avec le marquage {stylesheet} dans le gabarit de votre élément. Elle peut être aussi appliquée avec la méthode getElementCss(). Si vous n'avez pas de balise style existante dans votre page html, vous devriez appeler la méthode avec FALSE comme argument. Le comportement par défaut renvoie seulement les données CSS bruts sans balises style. Utile lorsque vous utiliser un moteur de gabarit.

Parameter

boolean $raw

(optionnel) sortie html avec les balises style ou juste les données bruts

Throws

Lance aucune exception

Note

Depuis la version 0.4.0 (2005-06-25)

This function can not be called statically.

Example

<?php
require_once 'HTML/QuickForm.php';
require_once 
'HTML/QuickForm/advmultiselect.php';

$form = new HTML_QuickForm('ams');
$form->removeAttribute('name');        // XHTML compliance

$fruit_array = array(
    
'apple'     =>  'Apple',
    
'orange'    =>  'Orange',
    
'pear'      =>  'Pear',
    
'banana'    =>  'Banana',
    
'cherry'    =>  'Cherry',
    
'kiwi'      =>  'Kiwi',
    
'lemon'     =>  'Lemon',
    
'lime'      =>  'Lime',
    
'tangerine' =>  'Tangerine'
);

// rendering with QF renderer engine and template system
$form->addElement('header'null'Advanced Multiple Select: custom layout ');

$ams =& $form->addElement('advmultiselect''fruit'null$fruit_array);
$ams->setLabel(array('Fruit:''Available''Selected'));

// template for a single checkboxes multi-select element shape
$template '
<table{class}>
<!-- BEGIN label_3 --><tr><th>{label_3}</th></tr><!-- END label_3 -->
<tr>
  <td>{selected}</td>
</tr>
</table>
'
;
$ams->setElementTemplate($template);

if (
$_SERVER['REQUEST_METHOD'] == 'GET') {
    
// fruit default values already selected without any end-user actions
    
$form->setDefaults(array('fruit' => array('kiwi','lime')));

} elseif (isset(
$_POST['fruit'])) {
    
// fruit end-user selection
    
$form->setDefaults(array('fruit' => $_POST['fruit']));
}

$buttons[] =& $form->createElement('submit'null'Submit');
$buttons[] =& $form->createElement('reset'null'Reset');
$form->addGroup($buttons);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>HTML_QuickForm::advMultiSelect custom example 4b</title>
<style type="text/css">
<!--
body {
  background-color: #FFF;
  font-family: Verdana, Arial, helvetica;
  font-size: 10pt;
}
<?php echo $ams->getElementCss(); ?>
// -->
</style>
</head>
<body>
<?php
if ($form->validate()) {
    
$clean $form->getSubmitValues();

    echo 
'<pre>';
    
print_r($clean);
    echo 
'</pre>';
}
$form->display();
?>
</body>
</html>