2012-04-11 156 views
1

我的應用程序要求日期選擇器應該顯示點擊日曆日曆,選擇日期今天的日期活躍和未來的日期停用...我是新的jQuery中,它已經打擾我一個月。請協助。我能夠顯示日期選擇器並選擇2030年前的任何日期,但是我需要日曆日曆或當前日期。 在此先感謝。無法禁用jQuery日期選擇器中的未來日期

我的壓延機來顯示..

<table id="calenderTable" class=""> 
       <tbody id="calenderTableHead"> 
        <tr> 
         <td colspan="4" align="center"> 
          <select onChange="showCalenderBody(createCalender(document.getElementById('selectYear').value, 
           this.selectedIndex, false));" id="selectMonth"> 
           <option value="0">Jan</option> 
           <option value="1">Feb</option> 
           <option value="2">Mar</option> 
           <option value="3">Apr</option> 
           <option value="4">May</option> 
           <option value="5">Jun</option> 
           <option value="6">Jul</option> 
           <option value="7">Aug</option> 
           <option value="8">Sep</option> 
           <option value="9">Oct</option> 
           <option value="10">Nov</option> 
           <option value="11">Dec</option> 
          </select> 
         </td> 
         <td colspan="2" align="center"> 
          <select onChange="showCalenderBody(createCalender(this.value, 
       document.getElementById('selectMonth').selectedIndex, false));" id="selectYear"> 
          </select> 
         </td> 
         <td align="center"> 
          <a href="#" onClick="closeCalender();"><font color="#003333" size="+1">X</font></a> 
         </td> 
        </tr> 
       </tbody> 
       <tbody id="calenderTableDays"> 
        <tr style=""> 
         <td>Sun</td><td>Mon</td><td>Tue</td><td>Wed</td><td>Thu</td><td>Fri</td><td>Sat</td> 
        </tr> 
       </tbody> 
       <tbody id="calender"></tbody> 
      </table> 

日期字段如下:

<tr> 
     <td>effected date</td> 
      <td> 
       <input type="text" name="eff_date" class="required" id="eff_date"><a href="#" onClick="setYears(1947, 2030); 
showCalender(this, 'eff_date');" class="" id="calender"> 
    <img src="Calender/calender.png"></a> 
       </td> 
     </tr> 

回答

4

這是相當假設我理解這個問題很簡單。你想設置最大允許的可選日期,對嗎?所有你需要使用的是maxDate選項。

下面是一個完整的例子,假設您在腳本和鏈接標籤引用正確的文件:

<!DOCTYPE HTML> 
<html> 
<head> 
    <title>date</title> 
    <meta charset="utf-8"> 
    <link type="text/css" href="css/ui-lightness/jquery-ui-1.8.18.custom.css" rel="stylesheet" /> 
    <script type="text/javascript" src="js/jquery-1.7.1.min.js"></script> 
    <script type="text/javascript" src="js/jquery-ui-1.8.18.custom.min.js"></script> 
</head> 
<body> 
    <div class="demo"> 
     <p>Date: <input type="text" id="datepicker"></p> 
    </div> 
<script> 
$(function() { 
    $("#datepicker").datepicker({maxDate: '+0d'}); 
}); 
</script> 
</body> 
</html> 

你可以看到它在這裏工作: http://gigaloop.com/answers/date.html

+0

感謝它正在工作,我使用日曆,但現在用jquery datepicker更好。唯一的問題是現在我不能改變這一年,我只能在當年轉換幾個月。可以請說明我如何在顯示的日期選擇器中包含這些年份,並放置一些邊框。 – mykey 2012-04-12 12:34:25

1

可以使用的maxDate與結合的minDate: http://jqueryui.com/demos/datepicker/#option-maxDate

+0

我有這段代碼,它不工作...:var dateToday = new Date(); 。 VAR日期= $( 「#eff_date」)日期選擇器({ defaultDate: 「+1瓦特」, changeMonth:真實, NUMBEROFMONTHS:3, 的minDate:dateToday, ONSELECT:功能(selectedDate){ VAR選項= this.id ==「eff_date」?「minDate」:「maxDate」, instance = $(this).data(「datepicker」), date = $ .datepicker.parseDate(instance.settings.dateFormat || $。 datepicker._defaults.dateFormat,selectedDate,instance.settings); dates.not(this).datepicker(「option」,option,date); } }); – mykey 2012-04-11 16:34:37

1

在腳本標籤,寫上:

 $(function() { 
     $("#datepicker-1").datepicker({ 
      minDate:"Now", maxDate: "+1m+1d" 
     }); 
    }); 

如果要顯示日期從1個月前和1個月後的日期,可以將minDate更改爲「-1m」。根據你的問題,如果你想從今天起禁用未來的日子,你可以把maxDate:「+ 1d」。 1年= 1年,1分= 1月,1天= 1天。

相關問題