0

いくつかのオプションに応じてフォームフィールドを追加する可能性があるのだろうか、

例えば:

ユーザーがオプションの数=8を選択し、ユーザーが[保存]をクリックすると、次のビューのユーザーに、それぞれ異なる名前の8つのテキストボックスが表示されます。

ファイルを介さずにフォームフィールドクラスを使用しようとしまし.xmlたが、機能させることができません。

Any1はそれが可能かどうかさえ知っていますか?

4

2 に答える 2

1

はい、それは可能です。フォームからフィールドの数を取得できます。10()だと仮定し$countます。

次のビューでは、以下のようにループしてテキストボックスを作成できます。

for($i = 1; $i <= $count; $i++)
 echo '<input type="text" name="fields[]" class="class_fields">';

バックエンドでは、以下のようにデータをフェッチできます。

$values = JRequest::getVar( 'fields', 'default_values', 'post', 'array' );

続きを読む

何か問題があれば私に知らせてください

于 2012-12-17T11:04:53.513 に答える
1

リストアイテムを動的に追加できるようにするには、クラスのような独自のJFormFieldを記述し、コンポーネント内にインストールする必要があります。

あなたの場合、JFormFieldListを拡張し、getOptions()関数をオーバーライドします。.xmlでは、新しく作成された入力タイプ名を使用します。

新しいフィールドクラスを作成して使用する方法は次のとおりです(ここから開始):http ://docs.joomla.org/Creating_a_custom_form_field_type

次に、JFormFieldListクラスを拡張する方法の例:http://docs.joomla.org/J2.5:How_to_add_custom_filters_to_components

簡単にするための2番目のリンクでは(たとえばのみ)

public function getOptions()
    {
            // Initialize variables.
            $options = array(0=>"Option 0", 1=>"Option 1");


            return $options;
    }
于 2014-09-02T11:14:55.017 に答える