使用示例模块的Ajax进度条

使用示例模块的Ajax进度条,ajax,drupal-7,progress-bar,Ajax,Drupal 7,Progress Bar,我是drupal的新手,目前正在学习示例模块及其子模块,我已经使用自定义模块创建了表单,在该表单中我希望为submit按钮添加进度条,我参考了许多站点,但是,我不清楚,我对submit按钮所做的是 function custom_form_menu() { $items = array(); $items['think/form'] = array( 'title' => t('Entry Free'), 'page callback' => 'custom_form_form',

我是drupal的新手,目前正在学习示例模块及其子模块,我已经使用自定义模块创建了表单,在该表单中我希望为submit按钮添加进度条,我参考了许多站点,但是,我不清楚,我对submit按钮所做的是

function custom_form_menu() {
$items = array();
$items['think/form'] = array(
'title' => t('Entry Free'),
'page callback' => 'custom_form_form',
'page arguments' => array('ajax_example_progressbar_form'),
'access arguments' => array('access content'),
'description' => t('My form'),
'type' => MENU_CALLBACK,
'file' => 'ajax_example_progressbar.inc',
);
return $items;
}
and for submit button,

custom_form_my_form($form , &$form_state) {
$form['first'] = array(
'#type' => 'textfield',
'#title' => t('First name'),
'#description' => "Please enter your first name.",
'#maxlength' => 6,
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'Submit',
);
return $form;
}

那么,在提交表单时,现在如何在这个提交按钮中添加进度条。

首先,进度条和进度指示器之间存在差异。进度条通常以百分比的形式显示请求的进度,因此它实际上取决于您正在做什么,并且需要一些更复杂的编码。如果您只是在寻找一个进度指示器,让用户知道ajax请求正在发生,那么它实际上是内置在drupal使用的ajax框架中的

为了让表单通过ajax提交,您需要在表单项上定义触发它的ajax属性:

$form['submit'] = array(
  '#type' => 'submit',
  '#value' => 'Submit',
  '#ajax' => array(
    'callback' => 'ajax_example_simplest_callback',
  )
);
这大概是最简单的例子

网上有很多关于这方面的文档