0

2 つの日付ピッカー フィールド (jquery UI ではなく telerik) と、週、月、年などのボタンを含むラジオ ボタン リストがあります。

ユーザーは、2 つの日付ピッカーを使用して日付範囲を選択するか、ラジオ ボタンの 1 つをクリックして、選択に基づいてフィールドにデータを入力することができます。

したがって、ユーザーが週を選択した場合、終了日は今日、開始日は 7 日前にする必要があります。

私が現時点で持っているのはこれです:

 $(function () {
        $("#dateRange_week").click(function () {
            var now = new Date();
            var startDate = now;
            $("#StartDate").val(startDate);
            $("#EndDate").val(now);
        });
    });

現在、jQuery に挿入された日付は、次のようにフォーマットされた文字列です。

Tue Oct 02 2012 12:08:01 GMT-0400 (Eastern Daylight Time)
  • startDate を現在 - 7 日として計算するにはどうすればよいですか?
  • 日付を mm/dd/yyyy の形式にするにはどうすればよいですか?

編集_ _ _

修正: 以下の受け入れられた回答に従って Date.js を使用すると、jQuery は次のようになります。

        $("#dateRange_week").click(function () {
            var startDate = (7).days().ago();
            var start = startDate.toString("M/d/yyyy");
            var endDate = new Date();
            var end = endDate.toString("M/d/yyyy");
            $("#StartDate").val(start);
            $("#EndDate").val(end);
        });
4

3 に答える 3

1

残念ですが、JS には適切な日時操作機能がありません。
良いニュース - そのためにいくつかのプラグインを使用できます。
例えば:

両方 (および他の多く) には、日と日付の書式設定を加算/減算する関数があります。他にも便利なオプションがたくさんあります。

于 2012-10-02T16:44:40.477 に答える
0

jQueryの日付をフォーマットするための良いスタートはここにありますjQueryの日付のフォーマット

そして、これは日を減算するのに役立つかもしれ ません日付から日を加算/減算しても、年/月が正しく変更されません

于 2012-10-02T16:25:50.330 に答える
0

次のようなものを試してください:

DateTime dtNow = DateTime.Now;
DateTime dtBegin = DateTime.MinValue;
DateTime dtEnd = DateTime.MinValue;
dtBegin = dtNow.AddDays(1 - Convert.ToDouble(dtNow.DayOfWeek));
dtEnd = dtNow.AddDays(7 - Convert.ToDouble(dtNow.DayOfWeek));

mm/DD/yyyy をフォーマットするには、.ToShortDateString() を使用します。

于 2012-10-02T16:27:24.630 に答える