2016-06-23 6 views
0

datapointオブジェクトは、date(文字列)とcount(整数)のフィールドを持ちます。私はshowビュー内のいくつかのJSの配列にそれらを追加しようとしています。私のdate文字列が一連のJS算術に変換されていることを除いて、すべてうまくいっています。たとえば、"2015-05-05"の値は2005に変換されます。コードは次のとおりです。暗黙的に文字列をintに変換するjavascriptを停止

<h1 id="chart"></h1> 

<script language="javascript" type="text/javascript"> 
     var counts = ['Count'] 
     var dates = ['x'] 
     <% @chart.datasource.datapoints.each do |c| %> 
      dates.push(<%= c.date %>) 
      counts.push(<%= c.count %>) 
     <% end %> 
     chart(counts, dates); 
</script> 
+1

'dates.push(" <%= c.date %> ")'これを引用符で囲んで文字列にします。そうでなければ '2015-05-05 = 2005' –

答えて

2

あなたが不足している引用符を:

var counts = ['Count'] 
var dates = ['x'] 
<% @chart.datasource.datapoints.each do |c| %> 
    dates.push("<%= c.date %>") 
    counts.push(<%= c.count %>) 
<% end %> 
chart(counts, dates); 

原始的な文字列ではなく、数と算術演算子としてそれを考慮することがJSを強制します引用符で値をラップします。

関連する問題