2012-02-14 56 views

回答

1

日曆用戶端控制器使用Javascript工作,因爲它需要用戶友好。所以你必須從日曆彈出窗口中控制它。有很多JavaScript插件可用於此。 o禁用過去和將來的日期,您必須使用相關插件中給出的選項。

http://jqueryui.com/demos/datepicker/

http://javascriptcalendar.org/

但是如果你需要爲此做一個服務器的驗證,您可以使用以下源。如果您在使用一個表單元素上https://github.com/php-pike/Pike/blob/master/Validate/DateRange.php

http://framework.zend.com/manual/en/zend.date.basic.html

1

你可以使用這個類從我的PHP-派克庫

<?php 
$form = new Zend_Form(); 
$element = Zend_Form_Element_Text('birthdate'); 
$element->setLabel('Some label'); 
$element->addValidator(new Pike_Validate_DateRange(array('lt' => Zend_Date::now()->subYear(15))); 
$form->addElement($element); 
?> 

這是服務器端驗證。您可以使用Prasad的答案來進行客戶端驗證。兩者都是明智的。

如果您使用Jquery-ui datepicker,那麼使用Jquery maskedinput插件以及嚴格用戶以特定格式填寫日期自己也不錯。喜歡的東西:

$('your-date-field').mask('9999-99-99', { 
    completed : function() { 
     $('your-date-field').datepicker('hide'); 
    } 
}); 

這將增加usabillity很多:)

+0

代碼因爲派克的日期範圍驗證程序似乎不再可用。它移動了嗎?它掉了嗎? – 2013-04-05 11:54:05

+0

不,URL已更改,您可以查看1.4分支:https://github.com/php-pike/pike/tree/1.4.x – 2013-04-06 20:57:07

相關問題