2011-11-23 5 views
0

Je ne sais pas pourquoi cet événement onChange ne fonctionne pas. Peut-être que je me suis tellement habitué au code que je ne peux pas voir mon erreur. Je vous remercie de votre aide:Événement CakePHP onChange

<td class="cellInput"> 
    <?php 
    $options = array('200'=>'200', '500'=>'500', '1000'=>'1000', '2000'=>'2000', '5000'=>'5000', 'Outro'=>'Outro'); 
    $attributes = array('legend' => false); 

    echo $form->select('capacidade', $options, array(
     'class' => '', 
     'label' => '', 
     'default' => '200', 
     'onchange' => "javascript:checkForOther(this);", 
    )); 
    ?> 
</td> 
+2

Vous devriez essayer et d'accepter des réponses à vos questions précédentes. – abhinav

Répondre

0

Essayez

  1. Mettre les attributs comme le quatrième argument au lieu de la troisième:

    echo $form->select('capacidade', $options, null, 
        array(
         'class'=>'' 
         ,'label' => '' 
         ,'default' => '200' 
         ,'onchange' => "javascript:checkForOther(this);" 
        ) 
    ); 
    
  2. La source de la page générée ont l'attribut onChange?

  3. Voir la documentation
+0

Fantastique !!! Merci beaucoup à vous tous! Cela a fonctionné =) –

0

Selon CakePHP documentation on select method, le troisième argument est utilisé pour choisir l'option est sélectionnée par défaut.

Vous devez utiliser le quatrième argument pour passer des attributs HTML à un élément select:

<td class="cellInput"> 
    <?php 
    $options = array('200'=>'200', '500'=>'500', '1000'=>'1000', '2000'=>'2000', '5000'=>'5000', 'Outro'=>'Outro'); 
    $attributes = array('legend'=>false); 
    echo $form->select('capacidade', $options, '200', array('class'=> '', 'label' => '', 'onchange' => "checkForOther(this);")); 
    ?> 
</td> 
2

Comme d'autres ont suggéré, placer les attributs dans la position correcte des paramètres. L'autre chose que je voudrais faire est de supprimer le javascript et juste le nom de la fonction là-dedans comme:

De: 'onchange' => "javascript:checkForOther(this);"

Pour: 'onchange' => "checkForOther(this)"

Questions connexes