2011-09-29 4 views
0

J'ai une table quelque chose comme ceci:cake php, comment remplir une sélection déroulante basée sur une autre sélection déroulante?

id test attr dim 
1 test1 a1 d1 
2 test2 a2 d2 
3 test3 a1 d3 
4 test3 a1 d2 

Je crée un champ déroulant qui indique le attr comme ayant seulement deux options a1 and a2. Sur la base d'une sélection de l'un a1 ou a2 je voudrais faire est quelque chose comme:

if (a1 is selected){$a == a1} else {$a == a2} 
$test = mysql_query("SELECT dim FROM xxx WHERE attr = $a") 

et remplir la deuxième liste déroulante avec les résultats de cette requête qui pourrait être d1, d2 ou d3

et ainsi de suite, sur plusieurs listes déroulantes si j'en ai besoin.

Je sais comment faire cela en php régulier mais je ne sais pas comment le faire dans CakePHP.

Des idées?

Modifier: Je ne sais pas si je dois utiliser les ajax, cela devrait fonctionner sans elle

+0

Oui, vous devez utiliser ajax !! – Rikesh

Répondre

0

Vous pouvez faire avec l'aide de ajax->observefield

par exemple:

$options = array('url' => 'getcounties', 'update' => 'ExampleCountyI 
$ajax->observeField('ExampleStateId', $options); 

MIS À JOUR

ObserverLe champ n'est pas plus disponible dans CakePHP js helper here c'est équivalent à la même chose pour les nouveaux CakePHP version >= 2.x

+0

semble ok, laissez-moi l'essayer. merci – Patrioticcow

+0

@Rikesh lien est mort – Enzero

Questions connexes