Formulaire Drupal:voulez montrer la forme précédente valeur default_value sur la page
Mon But est de savoir si l'utilisateur est en soumettant ce formulaire, avec "Nom du Produit" valeur "YYY". Sur la soumission de la page doit recharger mais, cette fois, "Nom du Produit" doivent montrer précédente valye par défaut, dans ce cas, "YYY".
Voici mon code...
function addnewproduct_page () {
return drupal_get_form('addnewproduct_form',&$form_state);
}
function addnewproduct_form(&$form_state) {
$form = array();
$formproductname['productname'] = array (
'#type' => 'textfield',
'#title' => t('Product Name'),
'#required' => TRUE,
'#size' => '20',
);
if (isset($form_state['values']['productname']))
{
$form['productname']['#default_value'] = $form_state['values']['productname'];
}
//a "submit" button
$form['submit'] = array (
'#type' => 'submit',
'#value' => t('Add new Product'),
);
return $form;
}
OriginalL'auteur | 2009-07-03
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser $form_state['stockage'] dans votre gestionnaire de soumission de thésauriser des valeurs entre les étapes. Afin d'ajouter une fonction envoyer comme suit:
Votre formulaire générateur de fonction devient:
Rappelez-vous que votre formulaire continuera d'être générés tant que votre $form_state['stockage'] est bourré. Ainsi, vous aurez besoin d'ajuster votre gestionnaire de soumission et unset($form_state['stockage']) lorsque vous êtes prêt à enregistrer les valeurs à la base de données etc.
Si votre forme est plus comme un filtre ie. utilisé pour l'affichage plutôt que de stocker les informations, puis vous pouvez vous en sortir avec juste
Lorsque le formulaire reconstruit auront accès à $form_state['values'] à partir de l'itération précédente.
+1 pour des exemples détaillés!
OriginalL'auteur hitfactory
Drupal va le faire par défaut si vous incluez:
Dans votre $formproductname tableau.
OriginalL'auteur Ben
Je préfère enregistrer toutes les valeurs une fois, quand nous parlons de formes complexes :
OriginalL'auteur Fedir RYKHTIK
ajoutant simplement reconstruit = true va faire le travail:
version: Drupal 7
OriginalL'auteur Alejandro Moreno
Pour ceux qui recherchent une réponse ici, tout en utilisant webform (que j'ai juste eu du mal à travers), voici ce que j'ai fait:
Note: ajouté le " comme il a été perdu
OriginalL'auteur kevinmcg
Dans mon cas, j'ai eu un couple de menus déroulants. La soumission du formulaire affiché à la même page, où j'ai pu filtrer une vue et je voulais montrer précédemment sélectionné, les options. Sur la soumission du formulaire, j'ai construit une chaîne de requête dans la soumettre crochet:
Dans le formulaire de construire crochet, je n'ai fait obtenir la chaîne de requête et ceux utilisés comme valeurs par défaut, comme suit:
OriginalL'auteur JP Dippenaar
J'ai l'habitude de résoudre ce problème en mettant la valeur soumises dans le $_SESSION variable dans la soumettre crochet. Alors la prochaine fois que le formulaire est chargé, je vérifie $_SESSION variable de la touche appropriée, et de mettre la valeur dans le #default_value fente si il ya quelque chose de présent.
OriginalL'auteur Dave DeLong
Ne sais pas si cela pourrait fonctionner pour vous, mais vous pourriez essayer d'ajouter le
#default_value
touche à la forme de la matrice deDe cette façon, si la variable est définie, il va saisir quoi que ce soit, mais si pas, vous pouvez utiliser une valeur par défaut.
OriginalL'auteur quickcel