有条件地显示EJS数据

时间:2013-04-29 09:14:26

标签: javascript html 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,如果它们被定义,或者视图是从某个路线调用的,还是更容易的。我试过插入一个过滤函数,但它被忽略了。我怎么能这样做?

1 个答案:

答案 0 :(得分:3)

for一样,您也可以在EJS中使用if

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

或者,如果您只是想在未定义属性时阻止显示undefined,您可以使用:

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

(请注意,对于包含数字0或布尔值false)的属性,这会失败