如何在webform的提交按钮上进行ajax调用?

时间:2015-04-16 10:46:43

标签: ajax drupal drupal-webform submit-button

这些是我的代码,我在template.php中完成了alter form。 请指教我!我通过webform模块创建了一个webform。我的目标是在没有页面加载的情况下提交表单。

我的代码如下:

   function business_form_alter(&$form, &$form_state, $form_id) {
     if($form_id == 'webform_client_form_7') { 
        $form['actions']['submit']['#ajax'] = array(
        'callback' => 'business_webform_js_submit',
        'wrapper' => 'webform-client-form-7',
        'method' => 'replace',
        'effect' => 'fade',
    );
   }

   function business_webform_ajax_submit($form, $form_state) {
       $sid = $form_state['values']['details']['sid'];
      if ($sid) {
        $node = node_load($form_state['values']['details']['nid']);
        $confirmation = array(
          '#type' => 'markup',
          '#markup' => check_markup($node->webform['confirmation'], $node-   >webform['confirmation_format'], '', TRUE),
        );
      return $confirmation;
     }
     else {
       return $form;
     }
  }

1 个答案:

答案 0 :(得分:0)

您的代码中存在一个小错误。 #ajax['callback']函数的名称与实际函数不同 您可能想要重命名该函数:

function business_webform_js_submit($form, $form_state)

它应该有用。