在加载用于编辑预先存在的数据的表单(例如用户个人资料)时,预填充字段的正确方法是什么?此外,奖励指向答案,还包括设置复选框或单选按钮的已检查状态。
答案 0 :(得分:1)
ValidForm Builder中表单字段的初始值可以使用"默认值"来设置。 " meta"的关键像这样的数组:
$objForm = new ValidForm("test");
$objCat = $objForm->addField(
"name",
"Name",
ValidForm::VFORM_STRING,
[
"required" => true
],
[
"required" => "Don't leave me empty"
],
[
"default" => "Arthur Dent" // <= This key sets the initial value
]
);
这适用于VFB中的所有字段,也适用于复选框,单选按钮和选择字段。
对于复选框,单选按钮和选择字段等列表类型字段,也可以使用addField
方法的第三个参数设置初始值。
$objForm = new ValidForm("test");
$objSelect = $objForm->addField(
"rating",
"Rate ValidForm Builder",
ValidForm::VFORM_SELECT_LIST
);
$objSelect->addField("Awesome", 1);
$objSelect->addField("Great", 2);
$objSelect->addField("Super Cool", 3, true); // This item is selected by default
$objSelect->addField("Splendid", 4);
$objSelect->addField("Best thing ever happened", 5);
上面的代码片段来自Github上的示例。 https://github.com/validformbuilder/validformbuilder/blob/master/examples/select-default.php
还有一个关于如何在多选字段上设置多个初始值的示例。 https://github.com/validformbuilder/validformbuilder/blob/master/examples/meta/checklist-with-multiple-default-values.php