3

2 つの textboxes に日付ピッカーがあり、有効な Javascript 日付を必要とする関数にこれらのテキスト ボックスの値を追加しようとしています。

これは関数の一部です - 開始は日付です

        else if (daystosearch == 'custom') {
            start.setDate(Date.parse($('#<%= tStartDate.ClientID %>').val()));
            end.setDate(Date.parse($('#<%= tEndDate.ClientID %>').val()));
        }

テキストボックスの値が「10/29/2012」であり、解析可能な日付ではないため、Date.Parse は機能しません。start.setDateテキストボックスの日付の値を使用して取得するにはどうすればよいですか?

4

3 に答える 3

3

テキストボックスの値が「10/29/2012」のようなものである場合、次を使用できるはずです。

var new_start = new Date($('#<%= tStartDate.ClientID %>').val());

ただし、 を使用しようとしている場合setDate、受け入れる値は 1 ~ 31 の整数であるため、次getDateのように新しい Date オブジェクトで使用する必要があります。

var new_start = new Date($('#<%= tStartDate.ClientID %>').val());
start.setDate(new_start.getDate());
于 2012-10-27T20:43:02.063 に答える
2

を使用 $(selector).datepicker("getDate")して.getDate()から、その日を取得します。あなたの場合:

start.setDate($('#<%= tStartDate.ClientID %>').datePicker("getDate").getDate());

最初のコメントが言うように、これは、テキスト ボックスで使用される文字列形式に関係なく、Date オブジェクトを直接提供します。APIドキュメントを見てください:)

編集:ianpgallが指摘したように、日付を取得するには getDate() も使用する必要があります。

于 2012-10-27T20:41:22.733 に答える
0

datepicker http://docs.jquery.com/UI/Datepicker/parseDateのユーティリティ関数を使用する

$.datepicker.parseDate('yy-mm-dd', '2007-01-26');
于 2012-10-27T20:45:52.223 に答える