0

Drupal 7 用のカスタム モジュールを作成しています。これには巨大なフォームが含まれています。フォームを変更し、いくつかの新しい選択、テキスト フィールド、およびチェックボックスを追加する jQuery コードを作成しました。

フォームを送信すると、jQuery によって追加されたフィールドからデータを読み取ることができません。

開発者向けのサンプル (http://drupal.org/project/examples) をダウンロードしました。Add-more ボタン (ajax_example) という 1 つの例があります。すべてのデータを送信し、カウンターを増やし、フォーム全体を新しいフィールドで再構築し、レンダリングされたフォームを送り返しているようです。フォームサーバー全体をクライアントに送信しないようにする可能性はありますか? これは最速のソリューションではありません。

jQuery を使用してフォームを変更し、送信し、再構築して検証したいと考えています。変更ごとにサーバーにデータを送信する必要はありません。

ありがとう、マーティン。

4

1 に答える 1

1

I submit the form I am not able to read data from fields which were added by jQuery

and要素に必ずnameフィールドを追加してください。inputsselect

入力されたフォーム フィールドの$_POST['here_is_the_name_which_you_give_to_your_elements']値をサーバー側で読み取ります。

フォームには、動的に作成される複数の入力と選択があることを解読します。それを管理するには:

フィールドの の[]後に追加します。例:valuename

 <input type='text' value='' name='my_custom_input[]' id='this_is_not_reqiured_1'>
 <input type='text' value='' name='my_custom_input[]' id='this_is_not_reqiured_2'>

またはを介し​​て、サーバー側のすべての<input>with name=の値を配列で取得できます。my_custom_inputPOSTGET

注:IDは必要ありませんが、これらの DOM 要素を操作する必要がある場合は、カウンターを使用して維持できます。

于 2012-04-30T09:25:54.593 に答える