hook_form_alter不会在刷新页面时触发

问题描述 投票:0回答:1

我已经制作了一个Drupal7模块,我正在尝试将值加载到hook_form_alter中。保存后可以使用,但是当我刷新页面时它会消失。为了向您显示问题,我在hook_form_alter中打印时间,并且它不会更新。我刷新页面时为什么不显示新的时间戳?

<?php

function bank_info_menu() {
  $items = array();
  $items['bank-info'] = [
      'title' => 'My Banking Info',
      'page callback' => 'drupal_get_form',
      'page arguments' => array('bank_info_form'),
      'access callback' => 'bank_info_check_role',
      'type' => MENU_NORMAL_ITEM,
  ];

  return $items;
}

function bank_info_form($form, &$form_state) {
  $form['bank_account_number'] = array(
    '#type' => 'textfield',
    '#title' => t('Bank Account Number'),
    '#default_value' => '',
    '#maxlength' => 20,
  );

  return $form;
}

function bank_info_form_submit($form, &$form_state) {
  global $user;
  $obj = entity_metadata_wrapper('user', $user);
  if(array_key_exists('bank_account_number', $form_state['values'])){
    $obj->bank_account_number = $form_state['values']['bank_account_number'];
  }
  $obj->save();
  drupal_set_message('Saved banking information successfully.');
}


function bank_info_form_alter(&$form, &$form_state, $form_id){
  if ($form['#id'] == 'bank-info-form') {
    echo date("h:i:sa");
  }
}

我已经制作了一个Drupal7模块,我正在尝试将值加载到hook_form_alter中。保存后可以使用,但是当我刷新页面时它会消失。为了向您展示问题,我在...

drupal-7
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.