我正在尝试为Joomla 3的模板参数创建一个自定义字段表单,通过遵循本页的说明创建自定义表单字段类型
以下是我的代码:
class JFormFieldMy extends JFormField {
protected $type = 'my';
public function getInput() {
return '<select id="'.$this->id.'" name="'.$this->name.'">'.
'<optgroup label="First">'.
'<option value="1">One</option>'.
'<option value="2">Two</option>'.
'<option value="3">Three</option>'.
'</optgroup>'.
'<optgroup label="Second">'.
'<option value="4">Four</option>'.
'<option value="5">Five</option>'.
'<option value="6">Six</option>'.
'</optgroup>'.
'</select>';
}
}
它工作得很好,值被保存,但所选值没有selected="selected"状态,所以下拉列表将始终显示选项'One'当我选择/实际值是'Two'
我已经阅读了这个解决方案:Joomla 2.5自定义字段列表未在显示中选择,但这是用于通用列表类型,而不是用于我想要的分组列表。
有人能帮我吗?由于
您没有设置列表的选定元素:
<option value="the_value" selected>....</option>
另一种方法:而不是从JFormField派生你的类,你应该从抽象类JHtmlList派生(你会发现它在libraries/cms/html/list.php
)您可以以libraries/cms/form/field/limitbox.php
为例。