当前位置: 首页 > 面试题库 >

如何使用EJS模板引擎将变量传递给内联javascript?

欧照
2023-03-14
问题内容

我已经从.EJS模板中称为项的数组中创建了按钮/文本的html列表。如何将特定项目的ID(item.id)传递给按钮的功能,以便将正确的数据发送到我的api?谢谢。

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>Menu</title>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
    <script type="text/javascript">

    function print(id) {
        $.ajax({
          url: "https://www.example.com/api/1/print",
          type: "POST",
          data: {
            "item_id": id
          },
          dataType: "json",
          success: function (result) {
            alert(result);
          },
          error: function (xhr, ajaxOptions, thrownError) {
            alert(xhr.status);
            alert(thrownError);
          }
        });
      };
    </script>
  </head>
  <body>
    <h2>Menu</h2>
    <ul>
        <% for(item of items) { %>
          <li>
            <button onclick="print(item.id)">PRINT</button>
            <%= item.name %> - <%= item.id %>
          </li>
        <% } %>
    </ul>
  </body>
</html>

问题答案:
<button onclick="print('<%= item.id %>')">PRINT</button>

这就是我将要使用的每种模板语言所采用的方法。看完文档后,看来EJS是一样的



 类似资料:
  • 具体查看ejs官方文档 https://github.com/mde/ejs

  • 如果ngFor循环使用带有then/else语法的模板,如何将ngFor循环中的当前变量传递给ngIf? 当内联使用时,它们似乎通过罚款,但不能从模板访问,例如: 模板似乎根本无法访问,但如果内联使用,它可以工作。 在下面的链接中有一个工作和不工作版本的完整例子

  • 问题内容: 我的Webapp导航系统中有一个表格,每次呈现页面时,该表格都会填充最新信息。如何避免在每个代码中放置以下代码? 用于填充表格。该表将显示在每个页面上 问题答案: 您可以使用Flask的上下文处理器将全局变量注入到Jinja模板中 这是一个例子: 为了将新变量自动注入模板的上下文中,Flask中存在上下文处理器。上下文处理器在呈现模板之前运行,并且能够将新值注入到模板上下文中。上下文处

  • 问题内容: 我有一个使用while循环创建的按钮。所以while循环为mysql表中的每一行创建一个表行。 我为该按钮编写了一行代码,该代码针对表的每一行再次创建,并且每个按钮基于该记录具有不同的值。 问题是我想使用它并以模式查看它,以便可以使用mysqli查询检索具有相同ID的记录。 这是模态的代码。 问题答案: 如果可以,我对你是正确的。 模态触发按钮 Bootstrap Modal事件以使用

  • 问题内容: 我需要更新我的时间。该值由正在执行的函数返回。 返回一个整数。 这将返回未防御状态。因此,我需要获取计数并将其传递给 问题答案: 如果您需要在每次调用之后更改重复间隔,则不能使用-使用恒定重复。您需要使用,因此您可以每次更改时间段:

  • 本文向大家介绍如何将JavaScript变量传递给PHP?,包括了如何将JavaScript变量传递给PHP?的使用技巧和注意事项,需要的朋友参考一下 您可以在PHP的同一页面上轻松获取JavaScript变量值。尝试以下代码L。