2017-05-08 11 views
0

を破る「inputEditDataFormatは」:Highcharts - Highstock私は私の会社でhighstockチャートを構築しています。現在、私は次の問題を抱えている入力

私はドイツ語のロケール形式にrangeSelector入力フィールドを変更する必要があります。例:25.06.2016

しかし、私はオプション "inputEditDateFormat"で日付形式を変更するとすぐには機能しなくなりました。チャートが月と日を混ぜ合わせるかどうかはわかりませんが、それは想定していることをしません。

私はあなたに私の問題についての洞察を与えるためにフィドルを作った。 http://jsfiddle.net/G7azG/34/

$('#container').highcharts('StockChart', { 

     "colors": [ 
      "#fedd00", 
      "#22b6ae", 
      "#c0263c", 
      "#136e6c", 
      "#e2a297" 
     ], 
     "legend": { 
      "align": "left", 
      "adjustChartSize": true, 
      "navigation": { 
      "enabled": false 
      }, 
      "enabled": false 
     }, 
     "rangeSelector": { 
      "selected": 4, 
      "inputDateFormat": "%d.%m.%Y", 
      "inputEditDateFormat": "%d.%m.%Y" // <-- blame this fool 
     }, 
     "yAxis": { 
      "labels": {}, 
      "plotLines": [ 
      { 
       "value": 0, 
       "width": 2, 
       "color": "silver" 
      } 
      ] 
     }, 
     "plotOptions": { 
      "series": { 
      "compare": "percent", 
      "showInNavigator": true, 
      "lineWidth": 3 
      } 
     }, 
     "tooltip": { 
      "pointFormat": "<span style=\"color:{series.color}\">{series.name}</span>: <b>{point.y} €/t</b> ({point.change}%)<br/>", 
      "valueDecimals": 2, 
      "split": true 
     }, 
     "series": [ 
      { 
      "data": [ 
       [ 
       1136073600000, 
       72.9 
       ], 
       [ 
       1138752000000, 
       73.6 
       ], 
       [ 
       1141171200000, 
       74.2 
       ], 
       [ 
       1143849600000, 
       75 
       ], 
       [ 
       1146441600000, 
       75.3 
       ], 
       [ 
       1149120000000, 
       75.8 
       ], 
       [ 
       1151712000000, 
       77.3 
       ], 
       [ 
       1154390400000, 
       78.6 
       ], 
       [ 
       1157068800000, 
       80.4 
       ], 
       [ 
       1159660800000, 
       82.8 
       ], 
       [ 
       1162339200000, 
       83.6 
       ], 
       [ 
       1164931200000, 
       86.5 
       ], 
       [ 
       1167609600000, 
       86.8 
       ], 
       [ 
       1170288000000, 
       84.5 
       ], 
       [ 
       1172707200000, 
       82.5 
       ], 
       [ 
       1175385600000, 
       77.6 
       ], 
       [ 
       1177977600000, 
       76.5 
       ], 
       [ 
       1180656000000, 
       76.1 
       ], 
       [ 
       1183248000000, 
       76.2 
       ], 
       [ 
       1185926400000, 
       76.2 
       ], 
       [ 
       1188604800000, 
       77.4 
       ], 
       [ 
       1191196800000, 
       81.1 
       ], 
       [ 
       1193875200000, 
       83.7 
       ], 
       [ 
       1196467200000, 
       83.6 
       ], 
       [ 
       1199145600000, 
       83.9 
       ], 
       [ 
       1201824000000, 
       81.6 
       ], 
       [ 
       1204329600000, 
       75.3 
       ], 
       [ 
       1207008000000, 
       67.6 
       ], 
       [ 
       1209600000000, 
       68 
       ], 
       [ 
       1212278400000, 
       68.2 
       ] 
      ], 
      "visible": true, 
      "name": "Rundholz AT" 
      } 
     ] 
}); 

編集:私はこの作業を得たmorganfreeする

感謝。私はそうのようなinputDateParser機能を使用するために必要な:

rangeSelector: { 
    inputDateFormat: "%d.%m.%Y", 
    inputEditDateFormat: "%d.%m.%Y", 
    inputDateParser: function (value) { 
     value = value.split('.'); 
     console.log(value); 
     return Date.UTC(
      parseInt(value[2]), 
      parseInt(value[1] - 1), 
      parseInt(value[0]) 
     ); 
    } 
} 

乾杯;;

+0

あなたは日付部分を編集できないと言っています。 –

+0

@ Nair Athul 申し訳ありませんが、それはもはやそれを行うべきではないことを意味しました –

答えて

2

ドキュメントinputEditDateFormat

から...これは、JavaScriptのDate.parseによって認識される形式でなければなりません。

inputDateParserで日付を解析する必要があります。

+0

あなたはそれを釘付けました。どのように私はその部分を逃したのか分からないが、それは私が必要なものだった。本当にありがとう! –

関連する問題