Eu tenho um elemento de formulário genérico:
$form['date'] = array(
'#type' => 'textfield',
'#title' => t( 'Date' ),
);
Que eu quero adicionar o jquery ui datepicker a esse elemento. Existe uma maneira de fazer isso através do formulário api, ou eu tenho que adicionar o seguinte usando drupal_add_js:
$('#edit-date').datepicker();
Ou existe outra maneira ainda melhor?
7
forms
javascript
meriial
fonte
fonte
Uma solução muito mais fácil para isso é instalar os módulos Data e Data Pop-up e usar o seguinte elemento api do formulário para obter instantaneamente um elemento pop-up de data. Nenhum js extra, incluindo o necessário.
O atributo #date_format aceita uma string formatada em PHP Date que é usada como o formato de entrada para o campo date.
fonte
O projeto Date contém um módulo (date_popup.module) que implementa um elemento de formulário date_popup. date_popup.module para o Drupal 6 definiu a função date_popup_load () , mas a função não está presente na versão do Drupal 7 do módulo, nem é uma função principal do Drupal.
O que a função fez foi incluir os arquivos JavaScript necessários.
A função equivalente presente na versão Drupal 7 do módulo é date_popup_add () , que contém o seguinte código.
Essa função é chamada de date_popup_element_process () , que é a função #process usada no campo de formulário date_popup. Você pode escrever uma função #process contendo código semelhante ao executado a partir dessa função e anexá-la ao campo de formulário ao qual deseja adicionar o seletor de datas.
fonte