1

私のアプリケーションでは、日付ピッカーがクリック時にカレンダー本体を表示し、今日の日付をアクティブにし、将来の日付を非アクティブにすることを選択する必要があります...私はjqueryを初めて使用し、1か月間邪魔をしました。助けてください。日付ピッカーを表示して2030年までの任意の日付を選択できますが、カレンダーを今日の日付または現在の日付までのみアクティブにする必要があります。前もって感謝します。

表示される私のカレンダー。

<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

3 に答える 3

4

質問を理解していると仮定すると、これは非常に簡単に達成できます。選択可能な最大許容日付を設定しますよね?使用する必要があるのは maxDate オプションだけです。

script タグと link タグで参照される適切なファイルを含めると仮定した場合の完全な例を次に示します。

<!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

于 2012-04-11T23:53:43.870 に答える
1

maxDateを使用し、minDateと組み合わせることができます:http: //jqueryui.com/demos/datepicker/#option-maxDate

于 2012-04-11T16:23:04.503 に答える
1

スクリプト タグ内に、次のように記述します。

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

1 か月前と 1 か月後の日付を表示する場合は、minDate を「-1m」に変更できます。あなたの質問によると、今日から将来の日を無効にしたい場合は、 maxDate: "+1d" を入れることができます。1y=1年、1m=1ヶ月、1d=1日。

于 2015-07-06T05:07:07.813 に答える