0

我在 drupal 7 ( https://drupal.org/project/modal_forms ) 中安装了模态表单模块来创建模态窗口登录表单。但是现在,我正在尝试用 css 改变它的外观,但我不知道该怎么做。

任何人都知道如何改变例如应用一个css类的输入提交按钮的外观?

这是我的代码:

 function get_output_ajax(){
              $output = array();
                  ctools_add_js('ajax-responder');
                  $output[] = ctools_modal_command_dismiss(t('Login success'));
                  if (isset($_GET['destination'])) {
                    $output[] = ctools_ajax_command_redirect($_GET['destination']);
                  }
                  elseif(module_exists('login_destination')) {
                    $destination = login_destination_get_destination('login');
                    $output[] = ctools_ajax_command_redirect($destination['path']);
                  }
                  else {
                    $output[] = ctools_ajax_command_reload();
                  }
                return $output;

}

function modal_forms_login($js = NULL) {

              // Fall back if $js is not set.
              if (!$js) {
                return drupal_get_form('user_login');
              }
                    $output = get_output_ajax();

                }
              }
              else{
                  $output = get_output_ajax();
              }



              print ajax_render($output);
            }            global $user;
              if ($user->uid == 0) {
                $output = ctools_modal_form_wrapper('user_login', $form_state);
                if (!empty($form_state['executed'])) {
                    $output = get_output_ajax();

                }
              }
              else{
                  $output = get_output_ajax();
              }



              print ajax_render($output);
}

提前致谢。

4

1 回答 1

0

这是我的解决方案,它适用于我:

function modal_forms_login($js = NULL) {
    // Fall back if $js is not set.
    if (!$js) {
        return drupal_get_form('user_login');
    }

    ctools_include('modal');
    ctools_include('ajax');
    $form_state = array(
            // 'title' => t('Log in'),
            'ajax' => TRUE,
    );
    global $user;
    if ($user->uid == 0) {
        $output = ctools_modal_form_wrapper('user_login', $form_state);

        //Necesario para editar el boton del login
        $cadena = $output[0]['output'];
        $patrón = '/class="form-submit"/';
        $sustitución = 'class="form-submit btn btn-primary"';
        $output[0]['output'] = preg_replace($patrón, $sustitución, $cadena);

        if (!empty($form_state['executed'])) {
            $output = get_output_ajax();

        }
    }
    else{
        $output = get_output_ajax();
    }



    print ajax_render($output);
}
于 2013-09-25T09:50:46.670 回答