joomla获取输入设置日历标记中的日期格式

时间:2013-11-29 14:40:12

标签: date joomla calendar formatting components

我的joomla组件中有一个日历输入框。日历元素的XML是:

        <field name="dob" type="calendar"

        label="COM_OPTICAL_DATABASE_FORM_LBL_PATIENTDETAIL_DOB"
        description="COM_OPTICAL_DATABASE_FORM_DESC_PATIENTDETAIL_DOB" 
        format="%d-%m-%Y"    


        filter="raw" /> 

哪种格式正确。但是,表单中的输入框显示为

Y-M​​-d

我想将其重新格式化为正确的日期

我发现这是当前日期:

                <div class="tablecol1 zebra1">
                     <?php echo $this->form->getLabel('dob'); ?>:&nbsp;&nbsp;
                </div>
                <div class="tablecol2 ">
                    <?php echo $this->form->getInput('dob', '', date('d-m-Y')); ?>

但我想让它放入我从数据库中检索的日期。

2 个答案:

答案 0 :(得分:0)

尝试以下方法:

<?php 
   echo $this->form->getInput('dob', '', JFactory::getDate('dob')->format('d-m-Y')); 
?>

OR:

<?php 
   echo $this->form->getInput(JFactory::getDate('dob')->format('d-m-Y'), ''); 
?>

请注意我没有测试过,所以让我知道它是否有效

答案 1 :(得分:0)

我做了一个工作,因为似乎没有人得到答案。我认为Joomla不允许这样做,或者有一些方法可以将它隐藏在文档中的某个地方。无论如何,任何其他人都在努力做这项工作:

 <?php
 $birthDate1 = $this->form->getValue('dob');
 $birthDateHolder = explode("-", $birthDate1);
 $changed = $birthDateHolder[2]."-".$birthDateHolder[1]."-".$birthDateHolder[0];
 echo $this->form->getInput('dob', '', $changed); 
 ?>

我已经测试了这个并且它可以正常工作。