根据数据库调出来的数据,确定html里的div显示,应该如何做?
我想的是数据库里的数据通过render函数传递给view中的页面,再利用js语句运用逻辑判断确定div显示。 但是一个问题是,js无法获得render传过来的参数,总是说undefined。我已经懵了,各种<script><%%>和<%= %>标签混合着用,都不行。到底该如何去做呢?
6 回复
视图引擎哪个?
上代码
@benbenye ejs
@leapon <%
news.forEach( function(news){
var year="0000";
var time=news.time;
var yy=time.substr(0,4);
var same=true;
if (yy!=year){
year=yy;
same=false;
%>
<div class="timelineMajor">
<h2 class="timelineMajorMarker"><span><%= news.time%></span></h2>
<dl class="timelineMinor">
<%} %>
<dt id="<%= news.time %>"><a>November 9-10, 2014</a></dt>
<dd class="timelineEvent" id="<%= news.time %>EX" style="display:none;">
<h3><%= news.abstract %></h3>
<div class="media">
<a href="#inline-1957-09-044" class="CBmodal"><img src="<%= news.pic%>" width="240" height="180" alt="Related Video: Reporting Little Rock"></a>
<p class="mediaLink"><a href="#inline-1957-09-044" class="CBmodal" title="Related Video: Reporting Little Rock"><%= news.imgInfo%>/a></p>
</div><!-- /.media -->
<p class="lead">
<%= news.description %>
</p>
<br class="clear">
</dd><!-- /.timelineEvent -->
<% if(!same){ %>
</dl><!-- /.timelineMinor -->
</div><!-- /.timelineMajor -->
<% }
}); %>
news 是我在index.js里用render函数传过去的参数,是个数组。
你的 forEach 和 if 都没有闭环吧
<%
news.forEach( function(news){
var year="0000";
var time=news.time;
var yy=time.substr(0,4);
var same=true;
if (yy!=year){
year=yy;
same=false;
%>
@leapon 有的,在最下面,但是报错function undefined