簡體   English   中英

使用Node.JS和EJS遍歷數組

[英]Loop Through Array With Node.JS and EJS

我正在嘗試使用EJS作為模板引擎使用Node.js制作待辦事項應用程序。 所有對象都分為3個數組:主題,日期和詳細信息。 它們在數組中。

我在快速路線中使用此代碼:

app.get('/dashboard', function (req, res) {
      var subjects = [];
      var duedates = [];
      var details = [];
      var ids = [];

      var userId = 'some user provided value';
      var sql = 'SELECT * FROM assignments WHERE owner = "' + req.user.email + '"';
      connection.query(sql, function (error, results, fields) {
        if (error) throw error;

        for (i = 0; i < results.length; i++) {

          subjects.push(results[i]['subject']);
          duedates.push(results[i]['duedate']);
          details.push(results[i]['details']);
          ids.push(results[i]['id']);

          console.log(details)

          //res.render('dashboard',{username:req.user.email, subject: subjects, date: duedates, detail: details, id: ids});
        } // ...
      });
    });

以及EJS模板上的以下代碼:

<!DOCTYPE html>
<html>

<head>
    <title>Pencil and Pens</title>
</head>

<body>
    <center>
        <h1>Pencil and Pens</h1>
        <h2>Welcome:
            <%= username %>
        </h2>
        <form action="/addassignment" method="post">
            Subject: <input type="text" id="subject" name="subject"> Due Date: <input type="duedate" name="duedate"> Details:
            <input type="details" name="details">
            <input type="submit" value="Add Assignment...">
        </form>
        <br />
        <div id="assignmentbody">
            <% for(var i=0; i < subject.length; i++) { %>
                <%= subject[i] %> |
                    <%= date[i] %> |
                        <%= detail[i] %>
                            <form style="display:inline-block;" action="/deleteAssignment" method="post">
                                <% } %>
        </div>
    </center>
    <script type="text/javascript">
    </script>
</body>

</html>

即使數組中有3個,也僅顯示第一個條目。

非常感謝!

本·費恩

從閱讀你的代碼,我看到3個數組對象 ,duedates細節名稱不同我的意思是你缺少的“S”為所有3個陣列循環顯示內。 添加這些。 它將正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM