如何在执行特定函数(Javascript)的基础上呈现模板

How can I render a template based on execution of a specific function- Javascript

本文关键字:基础上 Javascript 执行 函数      更新时间:2023-09-26

我有一个下划线模板,我想根据某个函数的调用在模板中呈现特定的代码。模板:

<div id = "account-hover-container" style="display:none;">
    <div class = "form-horizontal" id="hover-group-container">
    <% _.each(obj,function(item){ %>
      <p class="accountName-overview">
          <label for="user-create-date" class="control-label col-xs-3" id="accountName-title">Name:</label>
          <label class="overlay-accountName"><%= item.accountname %></label>
         <hr id="main-overlay-hr"/>
     </p>
  <% });%>
         <div id="detail-container">
        <div class="form-group overlay-group">
            <label for="user-create-date" class="control-label col-xs-3"><%= messages.admin.account.createdAccount %></label>
            <label name="user-create-date" id="user-create-date" class="control-label col-xs-4"></label>
        </div>
 </div></div>

在上面的模板中,我只想对某个函数的每个循环执行上面的操作(如下)。其余部分我想在页面加载时呈现。

Js:

function popcheck(obj) {
   //obj is a json object having fields for names and emails.
   //do some stuff
}

我可以从模板中调用popcheck函数,并仅为该函数在每个循环中显示这些内容吗。这可能吗??有什么想法吗?

谢谢!

您可以有两个独立的模板,帐户悬停容器模板和帐户名称概述模板。然后,您可以在popcheck函数中呈现并插入accountname概述模板。

例如:

<div id = "account-hover-container" style="display:none;">
    ......
    <div class="accountname-overview-container"/>
    ......
</div>
<script type="text/template" id="accountname-overview-template">
    <% _.each(obj,function(item){ %>
    ......
    <% });%>
</scirpt>
function popcheck(obj) {
  var tmpl = _.template($(#accountname-overview-template).html());
  $('.accountname-overview-container').html(tmpl({obj: obj}));
}