を認識しないEJSファイルに私は、サーバー側のチャートを作成し、次のコードでEJSに新しいグラフを描画しようとするD3-ノードを使用しよう: <% = svgChart%> ときIブラウザを使用して表示すると、以下のようなsvgタグの内容のみが表示されます。なぜrendeing SVGタグ
<svg xmlns="http://www.w3.org/2000/svg" width="960" height="400"><defs> <style type="text/css"><![CDATA[ .axis{font: 10px sans-serif;} .axis path,.axis line{fill: none;stroke: #000;shape-rendering: crispEdges;} .x.axis path{display: none;} ]]></style></defs><g transform="translate(40,20)"><path d="M20,32.4L20.430000000000003,32.4L20.86,32.4L21.290000000000003,32.4L21.720000000000002,32.4L22.150000000000002,32.4L22.580000000000002,32.4L23.01,32.4L23.44,32.4L23.87,32.4L24.299999999999997,32.4L24.73,32.4L25.16,32.4L25.590000000000003,32.4L26.02,32.4L26.450000000000003,32.4L26.88,32.4L27.310000000000002,32.4L27.740000000000002,32.4L28.17,32.4L28.6,32.4L29.03,32.4L29.46,32.4L29.89,32.4L30.32,32.4L30.75,32.4L31.18,32.4L31.61,32.4L32.04,32.4L32.47,32.4L32.9,32.4L33.33,32.4L33.76,32.4L34.190000000000005,32.4L34.620000000000005,32.4L35.050000000000004,32.4L35.480000000000004,32.4L35.910000000000004,32.4L36.34,32.4L36.77,32.4L37.2,32.4L37.63,32.4L38.06,32.4L38.489999999999995,32.4L38.92,32.4L39.35,32.4L39.78,32.4L40.21,32.4L40.64,32.4L41...............................
チャート自体は表示されません。 svgChartには、svgタグの文字列が含まれています。 svgChartのコンテンツ(文字列)をejsに直接コピーすると、チャートが完全に表示されます。
ページを読み込むときにタグの内容を表示できないようです。svgChartをプレーンな文字列とみなします。
私の質問:svgChartをsvgタグとして認識させるにはどうすればタグのテキストのsvgチャートを表示することができますか?
@Robertに エスケープされていない値を出力し、それはに関連すると思われますejsレンダリング方法。レンダリング時には、<% %>の間のコードはコード自体を持っているだけで、それをsvgコードとして解釈する時間はありません。同じSVGコード(タグ)を同じejsファイルに直接コピーできるので、クライアントはコードを見る代わりに完全にチャートを取得できます。私がしようとしているのは、動的にそのsvgコード(またはsvgタグ)をejsファイルに入れて、データが変更されるたびにクライアントに異なるチャートを持たせることです。助言がありますか? – Robin