ce que j'aimerais faire est assez simple à expliquer.
En fait, je voudrais que quand un utilisateur choisit le premier élément du menu déroulant, on rende visible le contenu d'une puce (qui est un tableau avec des checkbox) dont l'id est 'criteria'. Par contre, quand il choisit un autre élément du menu déroulant, ben cette puce on ne la rend pas visible.
J'ai déjà commencé, mais ça ne marche pas, j'ai du me tromper dans ma fonction javascript, si quelqu'un pouvait m'aider.
formulaire :
Code : Tout sélectionner
<select name="group">
<?
foreach ($result_find as $result) {//pour chacun des éléments trouvés, on le renomme en 'right'
?>
<option value="<? echo $result->getAttribute('name'); ?>" onChange="cacher();"><? echo $result->getAttribute('label'); ?></option><? } ?>
</select>
</li>
<li class="right"> </li>
<li style="clear: both; padding-top: 5px;">
<label class="form-section"><?php echo "All criteria"; ?></label>
</li>
<li id="criteria">
<label><?php echo "Choose te criteria"; ?></label>
<?/*---------------------------------*/
//on ouvre le fichier criteria.xml
$criteriaFile = '../../'.$cfg['ressources_root'].'/criteria.xml';
$domCriteria = new DOMDocument('1.0','UTF-8');
$domCriteria->load($criteriaFile);
$xpCriteria = new DOMXPath($domCriteria);
$cat_criteria = $domCriteria->getElementsByTagName('cat');
$result_find_criteria = $domCriteria->getElementsByTagName('criteria');
echo "<table align='center' width='100%'><tr>";
foreach($cat_criteria as $cat){
$name_cat = $cat->getAttribute('name');
$id_cat = $cat->getAttribute('id');
echo "<td valign='top'><br /><strong>".$name_cat." : </strong>";
foreach ($cat->childNodes as $criteria)
{
if ($criteria->nodeType != XML_ELEMENT_NODE) continue;
if ($criteria->tagName == 'criteria')
{
$name_criteria = $criteria->getAttribute('name');
$id_criteria = $criteria->getAttribute('id');
echo "<ul><input type='checkbox' id='crit[]' name='crit[]' value='$id_cat/$id_criteria'>$name_criteria</input></ul>";
}
}
}
echo "</tr></table>";
?>
</li>Code : Tout sélectionner
function cacher()
{
if (document.form.group[1].selected==true)
{
document.getElementById('criteria').style.visibility="visible";
}
else
{
document.getElementById('criteria').style.visibility="hidden";
}
}