2つのFieldGroup
sがあるフォームがあり、FieldGroup
sの1つにSelectionGroup
があります。
SelectionGroup_Item
sはFieldGroup
の形式で表示されますが、オプションの1つを選択するラジオボックスは表示されません。 FieldGroup
を削除すると、再び機能します。
フレームワークのテンプレートを見てきましたが、FieldGroup_holder.ss
SmallFieldHolder
〜FieldHolder
ラジオボックスが再び表示され、正常に機能します。テンプレートに従ってSelectionGroup
に従っていないテンプレートを確認しようとしましたが、迷子になります。
コードの例を次に示します
$fields = FieldList::create(
FieldGroup::create(
TextField::create('Name', 'Name')
),
FieldGroup::create(
SelectionGroup::create(
'Test1or2',
array(
SelectionGroup_Item::create(
'Test1', array(
TextField::create('Test1', 'Test1')
),
'Test1'
),
SelectionGroup_Item::create(
'Test2', array(
TextField::create('Test2', 'Test2')
),
'Test2'
)
)
)
)
),
FieldList::create(
FormAction::create('submit', 'Submit')
)
別のフィールドセットを追加して、その属性をid="hidden_field" aria-hidden="true"
に設定できます。 cssドキュメントでは、次のことができます。
#hidden_field{
display:none;
height:0;
width:0;
margin:0;
padding:0;
visibility: hidden;
}
これにより、SilverStripe Frameworkのクエリ動作が非表示になります。私自身のphpフォームでは、誰かが異なるpart-id番号で新しいフォームを何度も送信すると、ランダムな括弧が表示されました。私はこのアプローチを使用して、サイト上のランダムな括弧を非表示にしました。