本文整理汇总了PHP中OptionsetField::setAttribute方法的典型用法代码示例。如果您正苦于以下问题:PHP OptionsetField::setAttribute方法的具体用法?PHP OptionsetField::setAttribute怎么用?PHP OptionsetField::setAttribute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OptionsetField
的用法示例。
在下文中一共展示了OptionsetField::setAttribute方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: build
/**
* @param IRSVP $rsvp
* @param IRSVPQuestionTemplate $question
* @param IRSVPAnswer $answer
* @return FormField
*/
public function build(IRSVP $rsvp, IRSVPQuestionTemplate $question, IRSVPAnswer $answer)
{
$options = array();
foreach ($question->Values()->sort('Order') as $val) {
$options[$val->ID] = empty($val->Label) ? $val->Value : $val->Label;
}
$field = new OptionsetField($question->name(), $question->label(), $options);
$default_value = $question->getDefaultValue();
if (!is_null($default_value) && $default_value->ID > 0) {
$field->setValue($default_value->ID);
}
if ($question->isReadOnly()) {
$field->setDisabled(true);
}
if ($question->isMandatory()) {
$field->setAttribute('data-rule-required', 'true');
}
if (!is_null($answer)) {
$field->setValue($answer->value());
}
$field->setTemplate('RSVPOptionSetField');
return $this->buildDependantRules($rsvp, $question, $field);
}