Voici le détail:
1) le models/forms/helloworld.xml :
2) edit.php
lorsque l'on choisit une marque, toutes les séries apparaissent. Quelqu'un a-t-il déjà essayé les listes dépendantes. Merci d'avance d' avoir lu ce message.
Cordialement.
1) le models/forms/helloworld.xml :
Code PHP:
<field
name="marques"
type="list"
label="Marques"
description="Description des marques"
default=""
>
<option value="">sél. marques</option>
<option value="BMW">BMW</option>
<option value="Audi">Audi</option>
</field>
<field
name="series"
type="list"
label="Séries"
description="Description des séries"
default=""
>
<option value="">sél. série</option>
<option value="series-3" data-chained="bmw">Série 3</option>
<option value="series-5" data-chained="bmw">Série 5</option>
<option value="series-6" data-chained="bmw">Série 6</option>
<option value="a3" data-chained="audi">A3</option>
<option value="a4" data-chained="audi">A4</option>
<option value="a5" data-chained="audi">A5</option>
</field>
Code PHP:
$document = JFactory::getDocument();
// JQuery file
$document->addScript(JURI::root(true).'/administrator/components/com_helloworld/assets/js/jquery.min.js');
// jQuery noConflict
$document->addScriptDeclaration('jQuery.noConflict();');
// JQuery chained
$document->addScript(JURI::root(true).'/administrator/components/com_helloworld/assets/js/jquery.chained.min.js');
$document->addScriptDeclaration('
$("#series").remoteChained({
parents : "#marques",
url : "/api/series"
});
');
?>
<form action="<?php echo JRoute::_('index.php?option=com_helloworld&layout= edit&id=' . (int) $this->item->id); ?>"
method="post" name="adminForm" id="helloword-form" class="form-validate">
.../...
<?php echo $this->form->getLabel('marques'); ?>
<?php echo $this->form->getInput('marques'); ?>
</li>
<li>
<?php echo $this->form->getLabel('series'); ?>
<?php echo $this->form->getInput('series'); ?>
</li>
.../...
Cordialement.
Commentaire