1

私はこれを見ました:javascriptを使用して2009-05-29 21:55:57のようなフォーマットされた日時を取得する方法は?

ただし、1桁の日付の前に0が必要です(2011-4-1ではなく2011-04-01が必要です)

これに不要なプラグインをもう1つ追加するのは好きではないので、これを実行できる組み込み関数またはSIMPLE関数がjs / jqueryにある場合は、問題ありません。月が特異であるかどうかを確認し、それにゼロを追加するだけでは、10行の関数にならないことを願っています。

基本的に、AnyTime js(http://www.ama3.com/anytime/)プラグインを使用していますが、開始日が「yyyy-mm-dd」の形式でない場合はエラーがスローされます。私の最初のデフォルト値は「今」なので、新しいDate()をその形式に変換しようとしています。何か助けはありますか?

:私は本当に単純な解決策を望んでいたので、プラグインのリンクを与えないでください。プラグインを修正するためだけにプラグインを使用することは、実際にはあまりクリーンではないことがわかりました。

4

6 に答える 6

3

vvkの努力はほとんどお金にかかっています、これは同じことのマイナーな変更です:

var getDate = (function() {
  function addZ(n) {
    return n<10? '0'+n : ''+n;
  }
  return function() {
    var d = new Date();
    return d.getFullYear()+'-'+addZ(d.getMonth()+1)+'-'+addZ(d.getDate());
  }
}());
于 2011-04-01T13:41:42.763 に答える
3
   function getFormattedDate() {
        var date = new Date();
        var str = date.getFullYear() + "-" + getFormattedPartTime(date.getMonth()) + "-" + getFormattedPartTime(date.getDate()) + " " +  getFormattedPartTime(date.getHours()) + ":" + getFormattedPartTime(date.getMinutes()) + ":" + getFormattedPartTime(date.getSeconds());

        return str;
    }

    function getFormattedPartTime(partTime){
        if (partTime<10)
           return "0"+partTime;
        return partTime;
    }
于 2011-04-01T11:34:02.963 に答える
1

Any + Time(TM)ライブラリには、日付の解析とフォーマット専用のAnyTime.Converterという名前のオブジェクトが含まれているため、次のようにすることができます。

(new AnyTime.Converter({format:"%Y-%M-%d"})).format(new Date());

ただし、フィールドが空であるか、フォーマット指定子と一致しない場合、ライブラリはデフォルトで現在の日付/時刻に設定されるため、フォームを表示するときにフィールドを空のままにしておくことができます。

誰かが追加の問題や質問がある場合は、通常、私のWebサイトのリンクから直接私に連絡することができます。

于 2012-03-20T03:56:49.737 に答える
0

また:

javascriptを日付オブジェクトに変換してmysqlの日付形式に変換する(YYYY-MM-DD)

-ピート

于 2011-04-01T11:10:28.663 に答える
0

私はあなたがこれを探していると思います

于 2011-04-01T11:15:58.540 に答える
0

この素敵なコードは、すべてのタイプのフォーマットをカバーしています

この構文を使用する

var now = new Date();
now.format("mm/dd/yyyy");
于 2011-04-01T11:28:43.900 に答える