沃梦达 / 编程问答 / php问题 / 正文

在 drupal 中使用 hook_form_alter 设置 webform 组件值

set webform component value using hook_form_alter in drupal(在 drupal 中使用 hook_form_alter 设置 webform 组件值)

本文介绍了在 drupal 中使用 hook_form_alter 设置 webform 组件值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经使用 form_alter 函数来更改组件的值,但它不会更改并且默认值存储在数据库中.当我打印 $form 时,更新的值正在显示但未保存在 db 中.

I have used form_alter function to change the value of a component but it does not change and default values is stored in the db. when i print the $form the updated values is displaying but not saved in db.

 <?php 
function pahcom_form_edit_module_form_alter(&$form, &$form_state, $form_id) {   
        if($form_id =='webform_client_form_54')
        {           
            $new_value = rand(100000,10000000);
            $form['#node']->{'webform'}['components']['12']['value']=$new_value;            

        }
}

?>

推荐答案

工作代码

<?php 
function pahcom_form_edit_module_form_alter(&$form, &$form_state, $form_id) {   
        if($form_id =='webform_client_form_54')
        {           
            $new_value = rand(100000,10000000);
            $form['submitted']['vendor_id']['#default_value']=$new_value;               
        }
}

?>

这篇关于在 drupal 中使用 hook_form_alter 设置 webform 组件值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:在 drupal 中使用 hook_form_alter 设置 webform 组件值

基础教程推荐