5

週番号に変換する日付を選択するための次のコードがあります。

    $(".calendar").datepicker({
        showWeek: true,
        onSelect: function(dateText, inst) {
            dateFormat: "'Week Number '" + $.datepicker.iso8601Week(new Date(dateText)),
            alert($.datepicker.iso8601Week(new Date(dateText)))
        }
    });

アラートには正しい週番号が表示されますが、日付はまったく再フォーマットされません。

これにより何も起こらないため、onSelect の外に dateFormat 関数を移動することはできません。

私が達成したいのは、「第13週」のようなテキストフィールドです

何か案は?

http://jsfiddle.net/ENG66/

4

3 に答える 3

7

動作するようにフィドルを更新しました:http://jsfiddle.net/ENG66/11/

onselect イベントでは、.val() を使用してテキスト ボックス値の設定をオーバーライドする必要があります。

$(".calendar").datepicker({
        showWeek: true,
        onSelect: function(dateText, inst) {
            $(this).val("'Week Number '" + $.datepicker.iso8601Week(new Date(dateText)));
        }
    });​

編集

Igor Shastin が下のコメントで指摘したように、既にテキスト ボックスがinst.input

inst.input.val($.datepicker.iso8601Week(new Date(dateText)));
于 2012-09-20T15:26:35.760 に答える
2

このjsFiddleの例を試してください。

$(".calendar").datepicker({
    showWeek: true,
    onSelect: function(dateText, inst) {
        dateFormat: "'Week Number '" + $.datepicker.iso8601Week(new Date(dateText)),
        $(this).val('Week:' + $.datepicker.iso8601Week(new Date(dateText)));
    }
});​
于 2012-09-20T15:22:56.813 に答える