2011-11-03 54 views
0

我有一個模板,我試圖不顯示div如果變量傳入是空的。圍繞標題div的if語句給我錯誤。不知道如何選擇這樣做。如果陳述添加到_underscore模板

<div class='caption'> 
    <%if(name.length >1)%><p><span>Name</span><span class='rating'><%= name %></span></p> 
    <p><span>time</span><span class='time'><%= duration %> min</span></p> 
</div> 
+0

嘗試,如果(typeof name!==「undefined」&& name!== null) – dira

+2

與您的問題無關,但您應該使用'<%- name %>'而不是'<%= name %>'。這相當於'<%= _.escape(name)%>'並降低了您的XSS風險。 –

回答

3

這是值得一看你的模板編譯到,但真的,它正在創造一個JavaScript函數。在你的<% %>裏面是真正的javascript。正因爲如此,你需要開始和結束塊。請注意,我在if語句中使用起始塊{再後來使用ERB風格的標籤,關閉塊

<div class='caption'> 

<% if(name.length >1) { %> 
    <p><span>Name</span><span class='rating'><%= name %></span></p> 
<% } %> 

    <p><span>time</span><span class='time'><%= duration %> min</span></p> 

</div> 

這應該雅做呃!

(請注意,我不能」肯定地告訴在那裏你想你的‘然後’塊是年底,所以我只是猜測...它移動到你想要的條件,以結束)