Comment utiliser drupal 7 date_popup pour obtenir un temps seulement?
Dans drupal 7, avec la date de module installé, lors de la construction d'un formulaire, je veux simplement recueillir (via un formulaire) un temps pour que quelque chose se produire.
Lors de l'utilisation de l'api de formulaire, je définir mon champ comme suit
$form['dose']['time'] = array(
'#type' => 'date_popup',
'#title' => t('Start Time'),
'#date_format' => 'h:i A',
);
Ce qu'on voit très bien sur l'écran, avec le temps sélecteur de je veux.
Lors du traitement de ce dans ma fonction envoyer, je n'ai pas de valeur pour ce champ de formulaire. Il est vide.
Si je change ce seulement pour
$form['dose']['time'] = array(
'#type' => 'date_popup',
'#title' => t('End Date'),
'#date_format' => 'Y-m-d',
);
Ensuite ma fonction envoyer voit ce champ de formulaire juste bien, mais il affiche également un sélecteur de date, que je ne peut pas avoir pour ce champ.
Si j'ai mis le #required=TRUE pour le premier exemple, puis la validation échoue, sans doute parce qu'il n'existe pas de Y,m,d sélectionné. Si il y a un moyen je pourrais être un BS de la valeur pour cela, je serais ok avec ce que j'ai pu l'analyser par la suite.
Sur un passage, j'ai aussi essayé de type de formulaire date_select de la même manière, avec exactement le même résultat est vide.
Est-il possible d'utiliser la forme native api de drupal et être en mesure d'obtenir un temps par l'intermédiaire d'un sélecteur?
OriginalL'auteur mikepinch | 2011-03-26
Vous devez vous connecter pour publier un commentaire.
Ressemble à la Date du module crée un DateObject qui exige une date et une heure; renvoie la date si elle est valable et NULL sinon. Donc, en utilisant la Date de module fonctionnalités peuvent ne pas fonctionner comme vous le souhaitez.
Peut-être vous pouvez créer le champ comme un texte normal et l'utilisation de jQuery sélecteur de temps de votre choix (comme http://fgelinas.com/code/timepicker/), fixée sur le champ de texte comme votre temps de sélecteur.
OriginalL'auteur nmc
OriginalL'auteur Umar Adil
Une solution de contournement serait de récupérer l'heure uniquement les champs date de la
$form_state['input']
tableau.OriginalL'auteur nymo
Je viens de tomber sur le même problème. Voici ma solution:
OriginalL'auteur haggis