提问者:小点点

使用Ejs在Html页面上显示数组


我用ejs/nodejs/mongoDB为我的网站做了一个小论坛,当一个用户发布一个对象是创建的(title:,comment:,reply:[],我需要一个数组来回复,因为有多个,我设法在不同的Html元素中显示我的标题,评论也是,但是当我试图显示回复时,所有的回复都显示在一个中。“

“……这是我的密码:

        <div  class="vosQuestions" id="vosQuestions" >
            <% for(var i = 0; i < collectionName.length; i++) {%>
                
            <div class="result">
                <span id="titreResultat" class="titreResultat"><%=collectionName[i].title%></span>
                
                <div id="commentQuestions" class="commentOff">
                    
                        
                        <p class="comment"><%=collectionName[i].commentaire%></p> 
                       
                    <div class="trait"></div>
                    
                    
                    <p class="repArray"><%=collectionName[i].reponse%></p>
                    <p id="rep2">
                       
            
                    <div id="test" class="reprep">
                        <input  id="repBtn" class="repondre" type="button" value="repondre">
                    </div>
                    
                    
                </div>
               
            </div>
            
            
            <%} %>

共1个答案

匿名用户

正如您在问题的注释中所回答的,<%=CollectionName[i].Reponse%>

是您想要显示答复的位置。

它一次性显示所有应答(可能是JSON格式)的原因是reply或response是一个数组。为了在

元素中包装每个“reply”或respons,您必须迭代或循环遍历它们中的每一个。

请使用下面的代码作为参考。

for (let i = 0; i < replies.length; i++)
{
    <p class="repArray"><%= replies[i] %></p>
}

相关问题