0

Drupal Ajax はまったくの初心者です。私のプロジェクトでは、データベースに「はい」の値を挿入するためだけに送信ボタンがある単純なフォームが1つあります。そのため、Drupal Ajax で行う必要があります。したがって、そのボタンが送信されると、値はページの読み込みなしで Db に格納され、送信後にボタンの代わりに「正常に選択されました」というテキストが表示されます。

だから、誰でもこの仕事を手伝ってくれます

4

2 に答える 2

0

Drupal Webform Ajax Module を使用すると役立つ場合があります。

于 2015-03-16T12:19:51.603 に答える
0

ここでは、ページをリロードせずに送信するボタンを作成しました。

<?php

function db_store_form($form, &$form_state)
{
    $form['add_button'] = array(
        '#type'  => 'submit',
        '#name'  => 'Yes',
        '#value' => 'Yes',
        '#prefix' => '<div id="wrapper">',
        '#suffix' => '</div>',
        '#ajax' => array(
            'callback' => 'ajax_yes_callback',
            'wrapper' => 'wrapper',
            'method' => 'replace',
            'effect' => 'fade',
        ),
    );
    return $form;
}

function db_store_form_submit($form, &$form_state)
{
    drupal_set_message('Yes has been stored in yes_variable');
    // Store yes in db
    variable_set('yes_variable', 'yes');
}

function ajax_yes_callback($form, $form_state) {
    return $form['add_button'];
}

function db_store_menu()
{
    $items = array();

    $items['db_store'] = array(
        'title'           => 'db store',
        'page callback'   => 'drupal_get_form',
        'page arguments'  => array('db_store_form'),
        'access callback' => array(TRUE),
        'type'            => MENU_CALLBACK,
    );

    return $items;
}
于 2016-04-29T21:18:27.307 に答える