使用ZendX_JQuery_Form_Element_DatePicker查找当前的服务器时间

时间:2011-02-05 01:39:13

标签: php jquery zend-framework zendx

我使用ZendX_JQuery_Form_Element_DatePicker,我想将默认日期设置为日期时间选择器。

我目前的代码就是这个 -

$date = new ZendX_JQuery_Form_Element_DatePicker('date',
                array('jQueryParams' => array('defaultDate' => date('Y-m-D'),
                                'changeYear'=> 'true')));
        $date->setJQueryParam('dateFormat', 'dd.mm.yy')
                ->setRequired()
                ->setLabel("Date");

这将在日历上返回2016年8月的日期。我不确定做错了什么。有人可以在这里建议获取正确服务器日期的代码。

3 个答案:

答案 0 :(得分:5)

我建议在没有ZendX_JQuery的情况下使用JQuery(如果可能的话)。原因是目前有关于Discontinuing Maintenance of ZendX JQuery - Suggest drop for 2.0的讨论。

如果您不使用ZendX_JQuery,则可以在构建Zend_From期间设置默认日期。例如:

 $dateInput = $this->createElement('text', 'date');
 $dateInput->addValidator(new Zend_Validate_Date(array('format' => 'dd.MM.yyyy')));
 $dateInput->setValue(Zend_Date::now()->toString('dd.MM.yyyy'));

然后在您的视图中,您可以添加:

<script language="JavaScript">
    // assummmig date text input field has id="date"
    // datepicker automatically will set itself to the current value in the field
    // dateFormat seems different, but this is because there are some differences
    // between formats in Zend_Data and JQuery.
    $( "#date" ).datepicker({ dateFormat: 'dd.mm.yy' });
</script>

然而,回到您的代码我认为defaultDate应该在当前dateFormat(来自datepicker doc)。在你的代码中,它不是,所以这可能是它无法正常工作的一个原因。

答案 1 :(得分:0)

尝试使用Zend_Date()

所以该行看起来像

 array('jQueryParams' => array('defaultDate' => new Zend_Date(),

希望有所帮助!

答案 2 :(得分:0)

尝试

array('defaultDate'=&gt; date('d-m-y')

而不是

array('defaultDate'=&gt; date('Y-m-D')