0

CakePHP を使用すると、複数のフォームがあるページがあります。各フォームは、レコードの 1 つのフィールドを更新します。単一の「すべて送信」ボタンですべてのフォームを送信する方法を実装しようとしています。ただし、これまでの私のソリューションはすべて成功していません。

私の最初の試みはeditAll、配列を取ったコントローラーで呼び出される別のアクションを作成することでしたが、すべてのデータを保存する非表示のフォームがないと、すべてのフォームからそのアクションにデータを送信する方法がわかりません。editAll2 番目のアイデアは、コントローラーのアクションに送信される配列を作成するために、すべてのフォームを反復処理するある種の Javascript 関数を作成することでした。

最初の実装は機能せず、2 番目のアイデアを実装する合理的な方法を見つけることができませんでした。

基本的に、1 つのページから複数のフォーム (または少なくとも複数のフォームのデータ) を一度に送信する方向に誰かが私を向けることができることを望んでいました。

4

1 に答える 1

1

常にすべてを送信したいとは思わないでしょう - もしそうなら、1 つのフォームだけを作成してください。それらのいくつかを個別に送信できるようにしたいだけでなく、それらすべてを送信できるようにしたい場合は、次のようにすることができます。

すべてのフィールドを 1 つのフォームにまとめます。各フィールドには「送信済み」の値 (1 または 0) があります。個々のフィールドの横にある [送信] をクリックした場合は、送信されたすべての値を 0 にしてからフォームを送信します。

[すべて送信] をクリックした場合は、すべてを「1」にしてフォームを送信します。

次に、データを処理するときに、「送信済み」の値が 1 でないものをすべて取り除きます。

それでも多少の作業が必要で、必要以上のデータを送信していますが....それはアイデアです。

于 2013-02-18T22:05:21.507 に答える