5

Drupal の特定の Web フォームから送信ボタンを削除したいのですが、これは可能ですか。

可能であれば、同じフォームから前のボタンも削除したいと思います。

4

6 に答える 6

7

@googletopで示されているように、hook_form_alter()を使用してそのフォームをターゲットにして変更する必要があります

送信の設定を解除するには、カスタムモジュールで次のように機能します。

<?php
function my_custom_module_form_alter(&$form, &$form_state, $form_id) {

  if ($form_id == 'webform_client_form_130') {
    if ($thiscondition && $thatcondition){
      unset($form['actions']['submit']);
    }
  }
}
?>

「前へ」ボタンについても同じですが、フォーム配列で見つける必要があります。

于 2011-03-08T13:58:37.880 に答える
4
  1. ファイルをコピーするwebform-form.tpl.php
  2. webform-form-{nid}.tpl.phpnid がノード ID と等しい場所に名前を変更します
  3. 編集 - の後print drupal_render($form['submitted']);に 1 行だけ追加し、次の
    行を追加します。unset($form['actions']['submit']);

わたしにはできる。

于 2012-12-11T21:18:55.143 に答える
1

プロトタイプなどの簡単な修正が必要な場合は、CSS でボタンを非表示にすることができます。

.block-webform .form-actions {
visibility:hidden;
}

非表示のボタンはスペースを占有しますが、表示することはできません。

于 2011-09-08T01:59:34.757 に答える
1

を使用して、drupal の任意のフォームを変更できますhook_form_alter

于 2011-03-08T11:24:38.430 に答える
0

webform-form.tpl.phpawebform-form-{nid}.tpl.phpまたは a webform-form-[nid].tpl.php(テンプレート ファイルで指定されている) の作成が機能しないため、これらの単純な php 行を使用しました。$nidそのため、特定の Web フォーム ノードで送信ボタンの設定を解除するためだけに、Web フォームで if 条件を使用しました。

print drupal_render($form['submitted']);
$arrayWithoutSubmitButton = array( 29, 30, 31, 32);
if( in_array( $nid, $arrayWithoutSubmitButton)){
    unset($form['actions']['submit']);
}
于 2013-10-02T07:55:01.997 に答える