如何在 ejs.file 内递增变量

How can I increment a variable within ejs.file

我正在创建一个测验,用户将在其中一次访问一个问题。单击提交后,它会将 +1 添加到计数器并前进到数组中的下一个问题。 我所有的问题都存储在我的数据库中 MongoDB.

我尝试过的:

<% var pos = 0 %>

  <section class="nivelamento" id="nivelamento">
      <div class="container">

          <h2 id='teste_status' class="nivelamento-titulo">Math Questions!</h2>
          <h6>Question <%= (pos + 1) %> of <%= quizzes.length %> </h6>
          <div id="teste">

              <form action="/nivelamento" method="POST">
                  <h2><%= quizzes[pos].question %></h2>
                  <input type="radio" name='options' value="A"><%= quizzes[pos].firstOption %><br>
                  <input type="radio" name='options' value="B"><%= quizzes[pos].secondOption %><br>
                  <input type="radio" name='options' value="C"><%= quizzes[pos].thirdOption %><br><br>
                  <button type="submit" class="btn btn-danger btn-sm">Submit Answer</button>
              </form>

                  <% if(opcaoEscolhida === quizzes[pos].rightAnswer){ %>
                      <% correct++ %>                
                  <% }  %>

                  <% pos++ %>

          </div>    
      </div>
  </section>

我点击提交后,还是一样,我的数组的位置号没有变。

其余的,到目前为止,一切似乎都运行良好,因为手动更改我的计数器我得到了想要的结果。

你做不到。页面加载后,ejs 转换为常规 html。你需要使用 javascript 来处理这种事情。它就像 php 中的 echo 你可以阅读这个想法。您需要在 java 脚本中创建一个变量,并将其放入 html

的 div 和标题中