Nom
HTML_QuickForm_advmultiselect::getElementCss
-
Renvoie la feuille de style nécessaire au rendu de la forme liste
unique
Synopsis
require_once 'HTML/QuickForm/advmultiselect.php';
string HTML_QuickForm_advmultiselect::getElementCss(
|
$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.
Paramètres
-
boolean
$raw
-
(facultatif) sortie html avec les balises style ou juste les
données bruts
Note
depuis la version 0.4.0
Cette fonction ne peut pas être appelée de façon statique.
Exemple
-
<?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>