2013-04-29 81 views
1

我想重用EJS中的视图。它只是创建一个数据库查询结果的列表。我的代码是有条件地显示EJS数据

<ul data-role="listview" data-theme="a"> 
    <% for(var i=0; i<records.length; i++) { %> 
     <li><a href="#actions" onClick="SetCurrentCustomer(<%= records[i].ID %>)"> 
PROBLEM HERE----> <%= records[i].Name %> <%= records[i].TOJ%></a></li> 
    <% } %> 
    </ul> 

我只想显示每个记录[I],请将.Name和记录[I] .TOJ如果它们被定义或者如果视图是从某条路叫或任何更容易。我试图插入一个函数来过滤,但它只是被忽略。我怎样才能做到这一点?

回答

3

for,您还可以在EJS使用if

<% if (someCondition) { %> 
    <%= records[i].Name %> <%= records[i].TOJ %> 
<% }; %> 

或者,如果你只是想阻止undefined当没有定义的属性被显示,您可以使用此:

<%= records[i].Name || '' %> <%= records[i].TOJ || '' %> 

(注意,这将无法对含有数量0或一个布尔false属性)

+0

恰好WHA我需要。谢谢robertklep! – 2013-04-29 10:45:34

+0

完美,正是我所期待的。 – Eagle 2013-11-05 14:50:01

+0

完美的,如果你想要触发一个jquery函数,如果'records.length> 0'? – Cmag 2016-09-06 17:35:11