現在、私のRAILSアプリケーションでグラフを作成するためにHighchartsを実装しています。私はそれをもっときれいにするために怠け者のハイチャートの宝石を使用しています。これは正常に動作します。グラフは素晴らしいです。残念ながら、クリックイベントのようなカスタムjsイベントの追加など、いくつかのことが宝石でサポートされていませんでした。ビューに追加のオプションコードを追加する必要があります。JSをRAILSにレンダリングしようとすると問題が発生する
以下の関連するコードを見ることができます。コメントアウトされたクリックイベントは正常に動作します。このクリックイベントはブラウザのアラートウィンドウを正常に表示します。下のjsテキストの大きなブロックは、実装したいより高度なクリックイベントです。残念ながら、私は以下のエラーを受け取ります。 RAILSがjsテキストを解析しようとしているので、私はそれを推測していますか?私はそれを解決することはできません。
<%= high_chart("my_id", @h) do |c| %>
<%= #"options.series[4].point.events.click = function() {alert ('Category: ');}" %>
<%= render :js => %{
options.series[4].point.events.click =
function() {
hs.htmlExpand(null, {
pageOrigin: {
x: this.pageX,
y: this.pageY
},
headingText: this.series.name,
maincontentText: Highcharts.dateFormat('%A, %b %e, %Y', this.x) + ':<br/> ' + this.y + ' visits',
width: 200
});
}
} %>
<% end %>
エラー:
/home/scott/flux/app/views/cognos_mn_tickets/pbadata.html.erb:22: syntax error, unexpected ',', expecting ')'
...ext: Highcharts.dateFormat('%A, %b %e, %Y', this.x) +':<br/>...
... ^
/home/scott/flux/app/views/cognos_mn_tickets/pbadata.html.erb:22: unknown type of %string
... Highcharts.dateFormat('%A, %b %e, %Y', this.x) +':<br/> '+t...
...
はい私はHeredocを無駄にしようとしました。私は直接あなたのコードを上にCnP'ed効果なし。正確に同じエラーです。 : –
'lazy_high_charts' READMEの例にマッチする更新されたコードを試してみてください。 –
Hrm。今度はhighcharts jsコードを渡しているようですが、後で<%end%>が表示されたら文句を言うでしょう。あなたの上記のコードは、<%>の処理方法が奇妙です。 –