是否可以在Silverstripe表单字段周围添加包装器div

问题描述 投票:1回答:1

是否可以在silverstripe表单中的labelfield或任何其他形式的form字段周围添加包装器?用这种方式设置表单样式会更容易。

FieldList::create(
    LabelField::create('label','Label'),
    EmailField::create('Email',''),
    TextareaField::create('Comment','')
)
php html forms silverstripe silverstripe-4
1个回答
0
投票

是的,根据文档,您可以为每个表单或每个字段设置模板,see docs.

$field = TextField::create(..);
$field->setTemplate('MyCustomTextField');

如果模板位于主题/templates/目录的子文件夹中,则需要设置模板的整个路径。

如果需要全局更改模板,则可以在主题中覆盖它们。 LabelField的模板位于templates/SilverStripe/Forms/LabelField.ss中。

  1. 在主题中放置具有相同路径的文件(例如,templates/SilverStripe/Forms/LabelField.ss),

  2. 刷新Silverstripe缓存(例如,通过在URL上添加themes/mytheme/templates/SilverStripe/Forms/LabelField.ss运行flush),以便Silverstripe可以找到新的模板文件,

  3. 并开始尝试使用自定义标记。

仅当添加新的模板文件时才需要刷新,否则将自动检测到现有文件的更新。

© www.soinside.com 2019 - 2024. All rights reserved.