Проблема с событием onchange окна выбора в cakePHP - PullRequest
0 голосов
/ 17 марта 2011

Я написал следующий код на странице просмотра, чтобы автоматически заполнять поле выбора именами и фамилиями учащихся из сеанса и автоматически заполнять текстовое поле имени значением параметра, выбранного в раскрывающемся списке.но автозаполнение имени не происходит при выборе опции из списка. Пожалуйста, помогите мне решить эту проблему.

$javascript->link('jquery-1.5.1.min.js');
$javascript->link(array('jquery', 'form'));
$max_students = $this->Session->read('student_count');
$student_name = array(); 
$student_name[] = "-- Select --";
for($i=0;$i<$max_students;$i++)
{

    $student_first_name     = $this->Session->read('Student.'.$i.'.FirstName');
    $student_last_name  =$this->Session->read('Student.'.$i.'.LastName');
    $student_name[]         = ($student_first_name." ".$student_last_name);
}


$selectDomId = $this->Form->domId('students');
  $firstnameDomId = $this->Form->domId('Name');

  $this->Html->scriptBlock("
      jQuery(function($){
      $('#{$selectDomId}').change(function(event){
          $('#{$firstnameDomId}').val( $(this).val() );
            });
      });
  ",array('inline'=>false));


echo $this->Form->create('Contact',array('controller'=>'contacts','action'=>'addcontact'));
echo "<strong>Same As</strong>";
echo $this->Form->select('students',$student_name,$this->Form->domId(array(),'students'));
echo $this->Form->input('Name');

1 Ответ

0 голосов
/ 24 марта 2011

У меня нет особого ответа для вас - но можете ли вы использовать FireBug или какой-то аналогичный инструмент разработчика, чтобы выяснить, возникают ли какие-либо ошибки JavaScript при изменении значения select контроль?Вы также должны взглянуть на сгенерированный исходный код HTML для страницы, чтобы убедиться, что код скрипта был сгенерирован правильно.

Попробуйте вставить оператор отладки в вашу функцию JavaScript, чтобы убедиться, что вызов также происходит:

$this->Html->scriptBlock("
  jQuery(function($){
    $('#{$selectDomId}').change(function(event){
      $('#{$firstnameDomId}').val( $(this).val() );
    }); 
    alert('Test');
  });
",array('inline'=>false));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...