Как установить идентификаторы для отдельных элементов Quickform_date? - PullRequest
1 голос
/ 25 декабря 2009

Есть ли способ добавить атрибут ID к каждому элементу select, сгенерированному с помощью Quickform_date, чтобы он выглядел, например, так?

<select id="date-d" name="date[d]">
    <option value="1">01</option>
    <option value="2">02</option>   
    ...  
    <option value="31">31</option>
</select><select id="date-M" name="date[M]">
    <option value="1">Jan</option>
    ...
    <option value="12" selected="selected">Dec</option>
</select><select id="date-Y" name="date[Y]">
    <option value="2001">2001</option>
    ...
    <option value="2011">2011</option>    
</select>

Мне нужны эти идентификаторы для изменения выбранных опций с помощью JavaScript. Есть альтернативные идеи, как этого добиться?

1 Ответ

3 голосов
/ 08 февраля 2010

HTML_QuickForm_group :: getElements () метод оказывается ключевым, если кому-то интересно: -)

    $elements['date'] = $form->addElement('date', 'date','Datum:', 
                        array('language'  => 'cs', 
                              'minYear' => 2005,
                              'maxYear' => date('Y') + 2));             
    foreach ($elements['date']->getElements() as $key => $element) {
        $element->updateAttributes(array('id'=>'dateSelect'.$key));
    }   
...