0

私はPHPが初めてです。日付を格納するテーブルがあります。

id     nic     date
1      765     2012-04-20
2      654     2012-03-19
3      777     2011-01-08

jQueryカレンダーを使用して日付を挿入しています。この日付を現在の日付に検証する方法がわからないため、ユーザーは現在の日付より前の日付を入力できません。

現在の日付以上の日付を挿入したいだけです。

ここに私のデータピッカー初期化コードで

var A_TCALCONF = {
    'cssprefix'  : 'tcal',
    'months'     : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
    'weekdays'   : ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
    'longwdays'  : ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
    'yearscroll' : true, // show year scroller
    'weekstart'  : 0, // first day of week: 0-Su or 1-Mo
    'prevyear'   : 'Previous Year',
    'nextyear'   : 'Next Year',
    'prevmonth'  : 'Previous Month',
    'nextmonth'  : 'Next Month',
    'format'     : 'Y-m-d' //'d/m/Y' // 'd-m-Y', Y-m-d', 'l, F jS Y'
};

var A_TCALTOKENS = [
     // A full numeric representation of a year, 4 digits
    {'t': 'Y', 'r': '19\\d{2}|20\\d{2}', 'p': function (d_date, n_value) { d_date.setFullYear(Number(n_value)); return d_date; }, 'g': function (d_date) { var n_year = d_date.getFullYear(); return n_year; }},
     // Numeric representation of a month, with leading zeros
    {'t': 'm', 'r': '0?[1-9]|1[0-2]', 'p': function (d_date, n_value) { d_date.setMonth(Number(n_value) - 1); return d_date; }, 'g': function (d_date) { var n_month = d_date.getMonth() + 1; return (n_month < 10 ? '0' : '') + n_month }},
     // A full textual representation of a month, such as January or March
    {'t': 'F', 'r': A_TCALCONF.months.join('|'), 'p': function (d_date, s_value) { for (var m = 0; m < 12; m++) if (A_TCALCONF.months[m] == s_value) { d_date.setMonth(m); return d_date; }}, 'g': function (d_date) { return A_TCALCONF.months[d_date.getMonth()]; }},
     // Day of the month, 2 digits with leading zeros
    {'t': 'd', 'r': '0?[1-9]|[12][0-9]|3[01]', 'p': function (d_date, n_value) { d_date.setDate(Number(n_value)); if (d_date.getDate() != n_value) d_date.setDate(0); return d_date }, 'g': function (d_date) { var n_date = d_date.getDate(); return (n_date < 10 ? '0' : '') + n_date; }},
    // Day of the month without leading zeros
    {'t': 'j', 'r': '0?[1-9]|[12][0-9]|3[01]', 'p': function (d_date, n_value) { d_date.setDate(Number(n_value)); if (d_date.getDate() != n_value) d_date.setDate(0); return d_date }, 'g': function (d_date) { var n_date = d_date.getDate(); return n_date; }},
     // A full textual representation of the day of the week
    {'t': 'l', 'r': A_TCALCONF.longwdays.join('|'), 'p': function (d_date, s_value) { return d_date }, 'g': function (d_date) { return A_TCALCONF.longwdays[d_date.getDay()]; }},
    // English ordinal suffix for the day of the month, 2 characters
    {'t': 'S', 'r': 'st|nd|rd|th', 'p': function (d_date, s_value) { return d_date }, 'g': function (d_date) { n_date = d_date.getDate(); if (n_date % 10 == 1 && n_date != 11) return 'st'; if (n_date % 10 == 2 && n_date != 12) return 'nd'; if (n_date % 10 == 3 && n_date != 13) return 'rd'; return 'th'; }}

];
4

1 に答える 1

0

挿入時にチェックする必要がないように、jquery カレンダーの過去の日付を無効にすることができます。

これは、datepicker の初期化時に行うことができます。

var dates = $("#from").datepicker({
defaultDate: "+1w",   
minDate: new Date()
}
});
于 2012-04-21T10:45:05.293 に答える