2017-08-30 38 views
1

スクリプト内の変数をejsでレンダリングされた配列と同じに設定しようとするたびに、「Invalid is unexpected token」が表示されます。ここでスクリプト変数にejs値を取得できませんか?

は抜粋です:

<script type="text/javascript"> 
     var list = <%= events %>; 
    </script> 

しかし、私は同じエラーが表示されます。

<script type="text/javascript"> 
     var list = <%= events.slice(0) %>; 
    </script> 

は、もともと私はそれがに設定されていました。スクリプトタグを含むejsファイルをレンダリングし、スクリプトタグ内の変数にejs変数を設定することができました。私が間違っている?

イベントはカレンダーのイベントモデルの配列です。

+0

あなたは、レンダリングされたHTMLで何を得るのですか? –

答えて

3

ここでは、HTML

でコードを置く:

<script type="text/javascript"> 
    var list = <%-JSON.stringify(events)%>; 
</script> 
+0

これはそうでした。ありがとうございました! –

0

スクリプトタグを追加する必要はありません。ただ、これはあなたが探しているものである無地の例である

index.ejs

<script> 

//just call the events variable 

for(var i = 0; i < events.length; i++){ 
    var myEvent = events[i]; 
    //handle the event 
} 

//then use the variables outside the script tag after you are done with all the handling 

</script> 

<ul> 
<li><%=myDefinedVariable%></li> 
<% var name = "Jake" %> 
<li><%=name%></li> 

<%for(var i = 0; i < 10; i++){%> 
<li><%=name%></li> // puts li in the ul 10 times 
<%}%> 
</ul> 
+0

私は理解していますが、カレンダーを作成するためにスクリプトを使用していました。 –

+0

まだスクリプトタグにejs javascriptを含めずに、そこにカレンダーを作成する必要はありません@CollinDeSoto – turmuka

+0

毎日のブログが作成される正しい日にejs varがスクリプトの外にある場合、正しい日に各イベントを動的にリストすることはできません。スクリプトタグを使用しないと、多くの<%タグ –

関連する問題