0

我需要一个下拉列表,显示从当前开始的未来 10 年。我以这种方式在我的 .xml 文件中添加了表单字段:

        <field 
        name="ccYear" type="sql" default="" label="Year"
        query="SELECT @rownum:=@rownum+1 as rownum, YEAR(CURDATE())+@rownum value FROM #__content, (SELECT @rownum:= -1) AS a limit 10" 
        key_field="value" 
        value_field="value" 
    />

这工作得很好,但我觉得可能有更好的方法。整数字段类型似乎是一个不错的选择,但我不知道如何获取动态当前年份:

        <field name="ccYear2" type="integer" label="" class="ddDate" description="" first="2013" last="2023" step="1" />        
4

1 回答 1

0

您可以创建自己的类型字段,只需为其创建类,并将其放入:com_componen/models/fields/ccyear.php

jimport('joomla.form.formfield');

class JFormFieldCcyear extends JFormField
{
    protected $type = 'ccyear';

    protected function getInput()
    {
        $options = JHTML::_('select.integerlist', date('Y'), date('Y', strtotime("+10 years")), 1, 'year', 'class="inputbox"'); 

        return $options;
    }
}

如何使用:

<field name="ccyear" type="ccyear" label="Year"/>
于 2014-01-28T17:50:05.540 回答