問題タブ [drupal-fapi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
7134 参照

php - Drupal でフォーム API ボタン​​のテーマを設定するにはどうすればよいですか?

Drupal のフォーム API からのデフォルトの出力は次のとおりです。

それをテーマにするにはどうすればよいですか:

引き戸の CSS 手法を使用できるように、内側の span-tag が必要です。

form.inc から theme_button($element) をオーバーライドする必要があると思いますが、これまでの試みは成功していません。

0 投票する
3 に答える
2573 参照

php - アクションを送信する前にレンダリングされるDrupalフォーム

Drupalモジュールページがあり、ユーザーがアップロードできる一連のファイルの利用可能な部分のリストを含むドロップダウンをフォームに入力しています。ユーザーが特定のタイプのファイルをアップロードすると、そのオプションがリストから削除され、使用可能なすべてのファイルがアップロードされると、フォームはレンダリングされません。

問題は、Drupalが送信アクションを実行する前にフォームを描画しているため、ユーザーがページをリロードするまで操作が機能しなかったように見えることです。

これに対処する一般的な方法は何ですか?ページに移動するようにform_state['redirect']を設定しても機能しないようです。

0 投票する
3 に答える
1554 参照

php - Drupal ウィザード フォーム: 検証と前へのボタン

私の drupal6 サイトには、ウィザード形式があります。フォーム ストレージと再構築プロパティを使用して FormAPI で実装しました。#required プロパティと #element_validate プロパティの関数を使用して、フォームの検証を行っています。正常に動作していますが、1 つには、前のボタンをクリックすると、フォームが検証されていて、そうしたくありません。フォームの特定のボタンがクリックされたときに検証を無効にするスマートで正しい方法はありますか?

0 投票する
2 に答える
1974 参照

drupal - カスタム送信ボタンが CCK フォームでフォーム検証を起動しないようにする

次のように hook_form_alter を使用して、CCK フォームのフィールド グループ内に送信ボタンを追加しました。

ボタンを押すと、完全なフォームの検証ハンドラーが表示されます。フォームの最後にある [送信] ボタンを押したかのように、必須フィールドをチェックします。

#name プロパティを 'op' から 'searchwiki' に変更すると、この種の混乱を防ぐことができると思いましたが、そうではありませんでした。

誰もこれに対する回避策を知っていますか?

0 投票する
1 に答える
1265 参照

php - Drupal Form-API: #field_prefix が textfield で機能しない

フォームに追加の UI を追加できるように、テキスト フィールドに #field_prefix を実装しようとしています。

基本的に次のような関数を使用して、このような他のオーバーライドを行うモジュールがあります。

ドキュメントは次のとおりです

テーマの名前を変更して効果的に無効にしました-競合する他のオーバーライドがぶら下がっていないことを証明する必要があります。

私は何が欠けていますか?

更新: #field_name が適切な条件を満たしたときに、 theme_form_element をオーバーライドしてプレフィックスを手動で挿入することになりました。ハックに感じますが、text_textfield は単に #field_prefix をサポートしていません。

0 投票する
1 に答える
2940 参照

drupal - DrupalFormsAPI検証関数から送信関数に情報を渡す

Drupal Forms APIフォームの検証機能で、ユーザーのクレジットカードに請求しようとしています。成功したら、送信機能に参照番号を渡して、そこで使用できるようにしたいと思います。これを行うための最良の方法は何ですか?

0 投票する
3 に答える
5621 参照

drupal - Drupal で単一のカスタム フォームを使用して複数の CCK ノードを作成する

複数の関連ノードを同時に作成できるフォームが必要です。すべてのノードに CCK フィールドが含まれます。

CCK の組み込みの検証、送信、入力ウィジェット、およびセキュリティ機能を可能な限り/実用的に使用したいと考えています。

Drupal 6 でこれを達成するための最良の方法は何ですか? 「ベストプラクティス」やドキュメントはどこにありますか?

ここに私が見ることができる3つの可能性があります。これらのいずれかが機能するかどうか、またはさらに優れたオプションがあるかどうかについてのフィードバックをお待ちしています.

1.

  • コンテンツ タイプ foo の標準ノード作成フォームから始めます。
  • フック form_alter を使用して、コンテンツ タイプ バーのフィールドを追加してフォームを変更します [コンテンツ タイプ バーのウィジェットを直接挿入できますか?]
  • カスタム送信ハンドラーを使用して、フォームが送信されたときに bar タイプのノードを作成します [標準の cck ハンドラーを呼び出すことができますか? または、ノードオブジェクトを「手動で」構築し、独自の検証を行い、node_save を使用する必要がありますか?]

2.

  • 関連するコンテンツ タイプの「通常の」ノード作成フォームを連結する新しいカスタム フォームを作成します。
  • 次に、フック form_alter を使用して、必要に応じてフォームを変更します。
  • 標準の cck 送信ハンドラーがノードを作成する作業を実行できるようにします。

3.

  • カスタム フォームを最初から作成する
  • ノードの準備、ノードの保存などを使用して、独自の送信ハンドラーでノードを作成します。

標準のノード作成フォームの再利用に関するドキュメントが見つかりましたが、同時に複数のノードを作成することについては言及されていません。

フック nodeapi とフック form_alter の使用については、Advomatic のサイトの投稿に記載されていますが、特定のメソッド descrube では、コンテンツ タイプの 1 つを「ダミー」フィールドで汚染する必要があるようです。

ご助力ありがとうございます!

0 投票する
2 に答える
2922 参照

drupal - Drupal 5フォームに2つの送信ボタンを追加するにはどうすればよいですか?

フォームに2つの送信ボタンがあります。1つは、「my_form_submit」を次のように呼び出す通常の送信ボタンです。

フォームを送信する別のボタンを追加したいのですが、別の送信ハンドラーを呼び出します。これを行う方法はありますか?#submit-ah-soのような要素にプロパティを追加することを検討しました。

`steal_formula_for_icantbeliveitsnotbutter`関数を呼び出すことを望んでいますが、機能しません。大きな赤いボタンをクリックすると、通常の `my_form_submit`関数が呼び出されます。これにより、バターの代用品を何百万ドルも稼ぐという私の計画が後退します。誰がこの暗い混乱に光を当てることができますか?

0 投票する
4 に答える
3188 参照

drupal - Drupal 6フォームからコンテンツに変数を渡す方法は?

このシンプルな形でブロック(左)を作りました。今、私はページ(中央)で結果を処理して表示したいのですが、どうすればいいですか?

入力:

私が欲しい出力:

ここに私が書いて動作するブロックがあります。

次に、出力を表示する必要があります:)。

VIEWS やその他のアドオンの使用を提案しないでください。

Drupal を徹底的に学びたい。その逆ではありません ;)

0 投票する
2 に答える
17370 参照

drupal - Drupalでフォームアクションをオーバーライドする方法は?

私はもともと別のスレッドでこの質問を始めましたが、そのスレッドはちょっと答えられました、そして今私は主に別のフォームアクションを指定する方法を知りたいです...私は以下のコードを使用しようとしましたが、出力時にフォームアクションは残ります変更されていませんが、見ているprint_r($form)と正しく変更されています...なぜピックアップされないのですか?