在 html 文件中 <% 标记

In html file <% tag

本文关键字:标记 html 文件      更新时间:2023-09-26
<!-- Textarea -->
<div class="form-group">
  <label class="col-md-4 control-label" for ="<%= id %>"><%= label %></label>
 <div class="col-md-4" >                     
  <textarea class="form-control" id="<%= id %>" name="<%= id %>" ><%= textarea %></textarea>
 </div>
</div>

我正在搜索引导表单构建器

https://github.com/IhabSoliman/Bootstrap-Form-Builder

表单构建器应用程序中没有使用服务器端编程语言,html中的所有文件都使用,但有些标签,例如<%= id %>我不知道html文件中的标签是什么

您可以下载构建器应用程序,然后在资产/js/模板/片段文件夹中包含所有 html 文件。您可以查看该文件以查看此标记。

很快,我想知道它是哪种语言标签

它使用的是Underscore的模板编译:

模板函数既可以使用 <%= ... %> 插入变量,也可以使用 <% ... %> 执行任意 JavaScript 代码。

像EJS这样的几个(javascript)模板引擎使用此语法来输出数据。

我认为在您的情况下,此标签用作JavaScript模板中的占位符。像 Underscore 这样的库使用它来解析模板并显示解析的内容。

我不熟悉上面的库,但在大多数 JavaScript 模板引擎中,你会将模板和参数作为函数参数传递,你会得到一个可以注入到 DOM 中的字符串。 下划线以这种方式处理它:

   var tpl = _.template('<div class="form-group"> '
      <label class="col-md-4 control-label" for ="<%= id %>"><%= label %></label> '
     <div class="col-md-4" > '                    
      <textarea class="form-control" id="<%= id %>" name="<%= id %>" ><%= textarea %></textarea> '
     </div> '
    </div>');
    var result = tpl({
            id: "1",
            label: "this is a label",
            textarea: "this is the content of the text area"
    });

我相信Bootstrap-Form-Builder的工作方式类似。