2016-06-19 13 views
0

私は時間形式に問題があります。ここに私のコントローラがあります。 2016年6月2日のすべてのレコードを返します。JavaScriptを使って時間をフォーマットする方法

def get_date_list 
     @result = OpenStruct.new 
     if params[:city_id] 
      @result.day = Timetable.where(:tday=>"2016-06-02") 
     else 
      pust "no value" 
     end 
     render :json=>@result.as_json['table'] 
    end 

と私の見解では、私はjavascriptのタグ

:javascript 
    var updateDate = function(){ 
     var city_id = $("#select_other_month").val(); 
     $.post("/api/get_district_list.json", 
     { 
      city_id: city_id 
     }, 
     function(data,status){ 
      if (data.day){ 
       $("#bla").html(""); 
       $("#irts tbody").empty(); 
       console.log("status"); 
       var row = $("<tr>"); 
       for(i=0;i<data.day.length;i++){ 
       var row = $("<tr>"); 
        row.append($("<td>"+data.day[i].id+"</td>")) 
       .append($("<td>"+data.day[i].arrivedtime+"</td>")) 
       .append($("<td>"+data.day[i].leavetime+"</td></td>")) 
       .append($("<td>"+data.day[i].status_id+"</td></td>")) 
       .append($("<td>"+data.day[i].total_time+"</td></td>")) 
       .append($("<td>****</td>")); 
       $("#irts tbody").append(row); 
       } 
       } 
      console.log(data); 

     }); 
    } 

を持っている。しかし、それは2000-01-01T08のような時間を表示しています:30:00.000 + 08:00。どのように私はHH:MM:SSのようにこれをフォーマットすることができます。

+0

'var d = new Date(); var h = d.getHours(); var m = d.getMinutes(); var s = d.getSeconds(); var customDate = h + ':' + m + ':' + s; ' – Grisza

+0

システムの現在時刻を表示します。私は文字列 "2000-01-01T08:30:00.000 + 08:00"をhh:mm:ssのように印刷したいだけです。 –

+0

おそらく部分文字列ですか? – Grisza

答えて

0

まず最初にそれをDate JavaScriptオブジェクトに変換し、それを使用してhh:mm:ss領域を持つタイムスタンプを作成してからスプライスすることができます。次のコードはこれを示しています:

var date = new Date(data); // Create the javascript date object 
var dateStamp = date.toTimeString(); // Create the base dateStamp 
var dateText = dateStamp.split(' ')[0]); // Splice out only the part that we want 
console.log(dateText); // 16:30:00 
+0

これはコンソールでは無効です –

関連する問題